The general-purpose integration engines such as WebMethods, BizTalk, and IBM WebSphere Integration Server can sound appealing. Integration engines offer an attractive interface, which demos well, and a long list of packages they can work with. But there are many issues with these packages that generally make them not worth the hassle. Several of these problems are similar to other “big picture” solutions, such as CASE tools and 4GLs, in the past. The problems these tools address are more complex than they appear, so often the tool fails and has to be superseded with custom code for the harder problems. These tools are sold to bypass developers by using pretty GUIs and such, but they don’t bypass developers (because the details really are complex). Developers don’t like the pretty GUIs, because they lack support for versioning, backup, and often basics such as scalable diagrams. In any case, good developers like to work with a standard set of tools. This is a different tool, typically quite difficult to learn to use well, and since it is for a very specialized function most developers don’t learn it well. Integration of this type of tool is, ironically, not particularly easy. These tools are expensive, so there is often pressure to use them in sev- eral projects to amortize the cost. There may not always be a good fit. In practice, most people write their own solutions for application integration. At any time, most people have a point-to-point integration need, which can usually be addressed with a program in a scripting language such as Python. Two cases from personal experience, one involving WebMethods, the other using BizTalk Server, illustrate problems with integration engines. One example is a hospitality organization hosting many different retailers within the resort. These stores needed to exchange transaction data with the resort. Originally we had planned to slightly extend a TCP/IP socket protocol that was in place. Bringing in an integration engine changed a two- month project into a six-month one, increasing costs proportionately; delayed the start by a further six months while waiting for the initial engine deployment; and worsened performance by a factor of ten. The second example is a distribution company that used an integration engine to manage sales of product at many hundreds of “stores within stores” at dozens of retailers with different reporting formats. Unfortunately, performance was slow because of the large amount of reformatting needed by the engine, as things went in and out of XML. Customization was difficult; it turned out that requirements of the most important partners were too complex for the integration engine, and custom code was needed to manage many parts of the process. That code jumped through such hoops to work with the engine that it was more complex than if the problem had just been solved by custom code. Once again, the most general solution to this problem is Web services.
การบูรณาการเครื่องมือเอนกประสงค์ เช่น webmethods BizTalk Server , IBM , และการบูรณาการ ได้แก่ เสียงดูด เครื่องยนต์บูรณาการเสนออินเตอร์เฟซที่น่าสนใจ ซึ่งการสาธิต และรายการยาวของแพคเกจที่พวกเขาสามารถทำงานร่วมกับ แต่ มีปัญหามากมายกับแพคเกจเหล่านี้โดยทั่วไปให้ไม่คุ้มค่าการรบกวนหลายเหล่านี้ปัญหาคล้าย ๆ " ภาพใหญ่ " โซลูชั่น เช่น เครื่องมือ และ 4gls ในอดีต . ปัญหาเครื่องมือเหล่านี้ที่อยู่จะซับซ้อนมากขึ้นกว่าที่พวกเขาปรากฏ จึงมักเครื่องมือที่ล้มเหลวและต้องถูกแทนที่ด้วยรหัสที่กำหนดเองสำหรับปัญหาที่ยาก เครื่องมือเหล่านี้จะขายผ่านนักพัฒนาโดยใช้ guis สวยและเช่นแต่พวกเขาก็พัฒนาข้ามไม่ได้ ( เพราะรายละเอียดจริงๆมีความซับซ้อน ) นักพัฒนาไม่เหมือน guis สวย เพราะขาดการสนับสนุนสำหรับรุ่น , สำรอง , และมักจะพื้นฐาน เช่น ปรับขนาดได้ . ในกรณีใด ๆ , นักพัฒนาที่ดีชอบที่จะทำงานกับชุดมาตรฐานของเครื่องมือ นี้เป็นเครื่องมือที่แตกต่างกันโดยทั่วไปค่อนข้างแยกศาสนาจึงต้องเรียนรู้ที่จะใช้ดีและเนื่องจากมันเป็นเฉพาะฟังก์ชันมากนักพัฒนามากที่สุดไม่เรียนรู้มันอย่างดี การบูรณาการของเครื่องมือชนิดนี้อยู่ แต่ไม่ง่าย เครื่องมือเหล่านี้มีราคาแพง ดังนั้นมักจะมีความดันที่จะใช้พวกเขาใน sev - ที่โครงการจะหักกลบลบล้างต้นทุน อาจจะไม่เสมอที่ดีจึงต. ในทางปฏิบัติ คนส่วนใหญ่เขียนโซลูชั่นของตนเองเพื่อบูรณาการการประยุกต์ใช้ ในเวลาใด ๆคนส่วนใหญ่จะต้องบูรณาการจากจุดหนึ่งไปยังอีกจุดหนึ่ง ซึ่งมักจะสามารถ addressed กับโปรแกรมในภาษาสคริปต์เช่นงูเหลือม สองกรณีนี้จากประสบการณ์ส่วนตัวที่เกี่ยวข้องกับ webmethods , อื่น ๆที่ใช้ BizTalk Server , แสดงให้เห็นถึงปัญหากับเครื่องยนต์แบบบูรณาการ ตัวอย่างหนึ่งคือการจัดพื้นที่ค้าปลีกต่าง ๆภายในรีสอร์ทร้านค้าเหล่านี้ต้องการที่จะแลกเปลี่ยนข้อมูลธุรกรรมกับทางรีสอร์ท เดิมทีเราวางแผนที่จะขยายเล็กน้อยซ็อกเก็ต TCP / IP โปรโตคอลที่อยู่ในสถานที่ นำในการบูรณาการโครงการเครื่องยนต์เปลี่ยน 2 เดือนเป็น 6 เดือนหนึ่งค่าใช้จ่ายที่เพิ่มขึ้นตามสัดส่วน ; ล่าช้าเริ่มต้นโดยอีกหกเดือนขณะรอการใช้งานเครื่องยนต์เริ่มต้น ;และ worsened ประสิทธิภาพโดยปัจจัยที่สิบ ตัวอย่างที่สอง คือ การกระจาย บริษัทที่ใช้ในการบูรณาการเครื่องมือจัดการยอดขายของผลิตภัณฑ์ที่หลายร้อยของร้านค้าภายในร้าน " ที่หลายสิบของร้านค้าปลีกที่มีการรายงานรูปแบบ แต่น่าเสียดายที่งานได้ช้าเพราะของจำนวนมากของฟอร์แมตที่ต้องการโดยเครื่องยนต์ เป็นสิ่งที่ไปในและออกของ XMLการปรับแต่งจึงถูกแยกศาสนา มันกลับกลายเป็นว่า ความต้องการของคู่ค้าที่สำคัญที่สุดคือซับซ้อนเกินไปสำหรับการรวมเครื่องยนต์ รหัสเองก็ต้องจัดการหลายส่วนของกระบวนการ รหัสกระโดดผ่านห่วงเช่นทำงานกับเครื่องยนต์มันซับซ้อนกว่า ถ้ามีปัญหาก็ถูกแก้ไขโดยรหัสที่กำหนดเอง อีกครั้งโซลูชั่นทั่วไปส่วนใหญ่ปัญหานี้เป็นบริการเว็บ .
การแปล กรุณารอสักครู่..
