SOA and PHP
What is SOA?
“
SOA (Service oriented Architecture, services-oriented architecture) is a new service-oriented architecture programming model called "next-generation software architecture". SOA was proposed by Gartner in 1996, and in December 2002, Gartner proposed that SOA is "the most important subject in modern application development" and expects SOA to become an absolute advantage in software engineering practice by 2008.
SOA is a collection of services. From the point of view of both software and business functions, a service is a well-defined software component that does not depend on the context or state of any application that invokes it.
Technically, defining these services and their interfaces to the application, and then implementing them, is a central part of SOA. These services are typically implemented as Web services, and applications can be accessed through Simple Object access Protocol, SOAP) to access it, based on the HTTP protocol in the form of XML transmission.
Fundamentally, SOA is a flow and a relationship between service interfaces, and the design interfaces and their relationships need to be proficient in the knowledge of web technologies, the technology platforms under the business processes and services, and the applications that employ them. Architects must not only understand how to construct Web services, but also how they are used by existing applications and by applications that plan to use them in the future.
”
SOA and Web services are a relatively large concept, a specification (encapsulation of services and the specification of service delivery) that reduces the importance of how background programs work. You can use different programming languages and platforms to implement SOA and Web Services. It is even expected that Java EE is no longer the mainstream standard program design model after five years, because the JavaScript is too complex. Obviously, if I can implement SOA in a simple way, why use Java EE? This is the power of the platform, the impact of the platform is always greater than the application, Java EE is a small platform (for general development, it is a very large platform, but the technology and needs are always evolving), and SOA is a big platform. From process-oriented, object-oriented, component-oriented, and business-facing programming models, the current Java EE is mostly between component-oriented and business-oriented, and SOA is business-oriented, and should be said to be of great advantage for enterprise applications.
Now IBM can be said to be the dominant force of SOA, and we can see that it has even been aggressively promoting SOA in PHP (IBM, Oracle's attempt to apply PHP to SOA), which is a great ambition.
Let's look at IBM's progress in PHP SOA:
2005.7 IBM implements SDO with PHP and submits it to PHP's PECL library
2005.12 IBM United BEA, Oracle, IONA, SAP, Siebel, Sybase, Xcalia, and Zend have jointly published two important programming model specifications for SOA?? SCA (Service Component Architecture) and SDO (service Data Object). Attention, including Zend Company. The relationship between Zend and PHP is similar to that of Sun and Java.
2006.3 PHP SDO v 1.0.0 released
2006.9 PHP SDO v 1.0.4 released
2006.9 PHP SCA v 0.1.0 released
For more information, see:
SOA PHP Homepage
In fact, the SOA in PHP is not a very meaningful thing, because it is just a Java porting, with now PHP5 object-oriented programming model, is basically enough, and even some aspects more convenient, because PHP is a weak type and dynamic type of language (type juggling ), when implementing SDO, writing code is not as cumbersome as Java (no need to write so many geter/seter). But can it be promoted after implementation? Can this "abstract, loosely coupled and coarse-grained" software architecture really be accepted?
The development of PHP SOA by IBM's power (and possibly Oracle, Zend) is unlikely to be successful. Of course, if SOA develops well, PHP SOA will be popular and more technology manufacturers will join. Whether a technology can be accepted, can be popular, in many cases, it depends on the big environment.
Reference:
SOA PHP Homepage
Interpretation of SCA/SDO?? SOA has entered a substantive stage
An introduction to Service Data Objects for PHP
trackback:http://tb.blog.csdn.net/trackback.aspx?postid=1324113