Welcome!

Microservices Expo Authors: Sematext Blog, Lori MacVittie, Elizabeth White, David Sprott, SmartBear Blog

Related Topics: Microservices Expo

Microservices Expo: Article

Glue 4.1 from The Mind Electric

Glue 4.1 from The Mind Electric

What do you do after you've cofounded a company that developed award-winning products for distributed computing, won a Young Entrepreneur of the Year award, and finished a book on Web services? If you're Graham Glass you start another company and continue pushing the envelope of distributed computing.

The company is The Mind Electric (TME) and the envelope is one of simplicity. TME has tried to build a Web services platform with a simple conceptual model and an easy-to-understand API. It is working on a next-generation product they're calling a "Web services fabric" code named GAIA but this review focuses on their current platform, Glue 4.1.

Today APIs are proliferating like rabbits and frameworks are getting larger and more complex. When I wear my developer hat, I prefer to work at the API level. It helps to promote an understanding of the mechanics of the system, but it gets harder and harder to keep up. Graphical tools, like wizards, can hide the complexity of large frameworks, but after the initial code-generation phase is done most of these tools are not useful or tend to get in the way. With the ever-increasing complexity of application servers, Glue takes a welcome step in the right direction, the direction of simplicity.

If you're looking to put your toe in the water of Web services but recoil from the complexity of working with a full-blown J2EE application server, then Glue may be the product for you.

Flavors of Glue
There are two versions of Glue: Standard, which is free but unsupported; and Professional. Although Glue Standard is unsupported by TME, there is an interest group available on Yahoo! that gives you access to the TME user community at large.

Glue Professional comes with support via TME's online issue tracker and includes these high-end features:

  • Turbocharged performance
  • Real-time management console
  • Web service instrumentation
  • EJB integration
  • Reliable/async messaging over JMS
  • LDAP authentication via JAAS
  • WS-security, including digital signatures and encryption
  • WS-routing
  • Remote deployment
  • Virtual services
  • IDE plug-ins

    Getting Started
    You can download Glue from the TME Web site. Installation was quick and simple. I was pleasantly surprised to find that the installer automatically set up my environment. I could get down to running through the examples without additional twiddling. This may seem trivial, but you would be surprised how many platforms require additional setup and configuration (e.g., proper CLASSPATH setting) after the installer has run.

    Glue comes with a full complement of API documentation in Javadoc format and a Users Guide. The installer also sets up links to the online TME interest group and issue tracker.

    The Simplest of Services
    Getting a service up and running in Glue is incredibly easy. Any Java object can become a service by simply publishing an instance of the object to the Glue registry. There is no preprocessing or configuration required.

    Listing 1 (the code is online at www.syscon.com/webservices/sourcec.com) shows a basic object called Converter that converts temperature in Fahrenheit to Celsius. It requires only two lines of code to expose this object as a Web service. Line 25 starts a Web server that accepts messages via the /glue path. Line 26 exports the object as a Web service. Other than the import statements at lines 4 and 5, that's all that's required.

    By default, Glue exports all public, static, and instance methods of the object. If I want to expose only a subset of the methods I can create a Java interface that defines the set of methods I choose to expose. The interface.class is published along with the object and Glue exports the methods of the interface. If I don't have control of the source code of the object, I can control method exposure by supplying a Context object that contains a list of method properties.

    A Simple Client
    Writing a Web service client using Glue is also easy. Listing 2 shows a test client for the Converter service. Line 11 binds to the service and returns an object that implements the published interface. The service can now be treated as a standard Java object.

    There are a few things in this example that need further explanation. The first parameter of the bind method is the URL of the WSDL for the Web service. To obtain the WSDL for the Web service I just need to append .wsdl to the service URL. Glue will generate the WSDL automatically from the interface and cache it for future use. The second argument of the bind is the class of the interface for the service. I didn't define an interface for my Web service, but Glue can generate one from the service definition with its wsdl2java tool.

    This example may seem overly simplistic but TME provides a large assortment of examples that exercise a wide range of Glue's features including support for .NET.

    Advanced Features
    You may worry that a tool that provides such a simple interface would not offer the power and flexibility that a typical large enterprise would need. Glue has more advanced features than most would need.

    If you want to monitor or modify the message stream, Glue provides a feature called Interceptors. Interceptors are leveraged throughout Glue to provide advanced processing of SOAP headers and attachments.

    Glue supports SOAP over the Java Message Service (JMS). Both synchronous and asynchronous messaging styles are supported and services can be published simultaneously over JMS and HTTP.

    For those who insist on only using Java standard APIs, Glue provides implementations of JAX-RPC and JAXM.

    Hard-core techies can completely bypass the use of Java interfaces and Java/XML serialization. Glue provides the ability to directly create, invoke, and process raw SOAP messages.

    Finally, for high-volume systems Glue can reduce the size of SOAP messages by utilizing optimizations like tag substitution, envelope omission, and HREF inlining.

    Interoperability
    Although Glue runs easily out of the box as a stand-alone lightweight application server, it can plug into any application server that supports servlets. In this hosted mode, Glue can expose any stateless session bean as a Web service. The Users Guide provides instructions for installing glue under BEA WebLogic, WebSphere, and SunONE application servers.

    If you're an IDE jockey you'll be happy to find plug-ins for JBuilder, Eclipse, and IDEA.

    Conclusion
    I was definitely happy with the speed at which I could install Glue and get a scratch Web service up and running. But I was really impressed when I began to dig in and found a depth of features I had not expected from a platform that strived for simplicity. I've always liked the adage, "Good tools make simple tasks easy and complex tasks possible." I think that adage sticks with Glue.

    Company Info
    The Mind Electric

    15455 Dallas Parkway
    Millenium Building, 6th Floor
    Addison, TX 75001
    Phone: (972) 764-5115
    Fax: (972) 764-3215
    Web: http://www.themindelectric.com
    E-mail: [email protected]

    Licensing Information
    Developer License: $1000 per developer
    Runtime License: $2000 per CPU

    Testing Environment
    OS: Windows XP Professional (Service Pack 1)
    Hardware: Intel Pentium III – 996 MHz – 512 MB RAM

  • More Stories By Paul Maurer

    Paul Maurer is a principal in the financial services practice of a leading consulting services company.

    Comments (0)

    Share your thoughts on this story.

    Add your comment
    You must be signed in to add a comment. Sign-in | Register

    In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


    @MicroservicesExpo Stories
    Node.js and io.js are increasingly being used to run JavaScript on the server side for many types of applications, such as websites, real-time messaging and controllers for small devices with limited resources. For DevOps it is crucial to monitor the whole application stack and Node.js is rapidly becoming an important part of the stack in many organizations. Sematext has historically had a strong support for monitoring big data applications such as Elastic (aka Elasticsearch), Cassandra, Solr, S...
    There's a lot of things we do to improve the performance of web and mobile applications. We use caching. We use compression. We offload security (SSL and TLS) to a proxy with greater compute capacity. We apply image optimization and minification to content. We do all that because performance is king. Failure to perform can be, for many businesses, equivalent to an outage with increased abandonment rates and angry customers taking to the Internet to express their extreme displeasure.
    SYS-CON Events announced today that 910Telecom will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Housed in the classic Denver Gas & Electric Building, 910 15th St., 910Telecom is a carrier-neutral telecom hotel located in the heart of Denver. Adjacent to CenturyLink, AT&T, and Denver Main, 910Telecom offers connectivity to all major carriers, Internet service providers, Internet backbones and ...
    Before becoming a developer, I was in the high school band. I played several brass instruments - including French horn and cornet - as well as keyboards in the jazz stage band. A musician and a nerd, what can I say? I even dabbled in writing music for the band. Okay, mostly I wrote arrangements of pop music, so the band could keep the crowd entertained during Friday night football games. What struck me then was that, to write parts for all the instruments - brass, woodwind, percussion, even k...
    Right off the bat, Newman advises that we should "think of microservices as a specific approach for SOA in the same way that XP or Scrum are specific approaches for Agile Software development". These analogies are very interesting because my expectation was that microservices is a pattern. So I might infer that microservices is a set of process techniques as opposed to an architectural approach. Yet in the book, Newman clearly includes some elements of concept model and architecture as well as p...

    Modern organizations face great challenges as they embrace innovation and integrate new tools and services. They begin to mature and move away from the complacency of maintaining traditional technologies and systems that only solve individual, siloed problems and work “well enough.” In order to build...

    The post Gearing up for Digital Transformation appeared first on Aug. 30, 2016 05:45 PM EDT  Reads: 1,708

    DevOps at Cloud Expo – being held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA – announces that its Call for Papers is open. Born out of proven success in agile development, cloud computing, and process automation, DevOps is a macro trend you cannot afford to miss. From showcase success stories from early adopters and web-scale businesses, DevOps is expanding to organizations of all sizes, including the world's largest enterprises – and delivering real results. Am...
    This complete kit provides a proven process and customizable documents that will help you evaluate rapid application delivery platforms and select the ideal partner for building mobile and web apps for your organization.
    Internet of @ThingsExpo, taking place November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 19th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The Internet of Things (IoT) is the most profound change in personal and enterprise IT since the creation of the Worldwide Web more than 20 years ago. All major researchers estimate there will be tens of billions devices - comp...
    Thomas Bitman of Gartner wrote a blog post last year about why OpenStack projects fail. In that article, he outlined three particular metrics which together cause 60% of OpenStack projects to fall short of expectations: Wrong people (31% of failures): a successful cloud needs commitment both from the operations team as well as from "anchor" tenants. Wrong processes (19% of failures): a successful cloud automates across silos in the software development lifecycle, not just within silos.
    19th Cloud Expo, taking place November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy. Meanwhile, 94% of enterpri...

    Let's just nip the conflation of these terms in the bud, shall we?

    "MIcro" is big these days. Both microservices and microsegmentation are having and will continue to have an impact on data center architecture, but not necessarily for the same reasons. There's a growing trend in which folks - particularly those with a network background - conflate the two and use them to mean the same thing.

    They are not.

    One is about the application. The other, the network. T...

    As the world moves toward more DevOps and Microservices, application deployment to the cloud ought to become a lot simpler. The Microservices architecture, which is the basis of many new age distributed systems such as OpenStack, NetFlix and so on, is at the heart of Cloud Foundry - a complete developer-oriented Platform as a Service (PaaS) that is IaaS agnostic and supports vCloud, OpenStack and AWS. Serverless computing is revolutionizing computing. In his session at 19th Cloud Expo, Raghav...
    SYS-CON Events announced today that eCube Systems, a leading provider of middleware modernization, integration, and management solutions, will exhibit at @DevOpsSummit at 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. eCube Systems offers a family of middleware evolution products and services that maximize return on technology investment by leveraging existing technical equity to meet evolving business needs. ...
    The following fictional case study is a composite of actual horror stories I’ve heard over the years. Unfortunately, this scenario often occurs when in-house integration teams take on the complexities of DevOps and ALM integration with an enterprise service bus (ESB) or custom integration. It is written from the perspective of an enterprise architect tasked with leading an organization’s effort to adopt Agile to become more competitive. The company has turned to Scaled Agile Framework (SAFe) as ...
    If you are within a stones throw of the DevOps marketplace you have undoubtably noticed the growing trend in Microservices. Whether you have been staying up to date with the latest articles and blogs or you just read the definition for the first time, these 5 Microservices Resources You Need In Your Life will guide you through the ins and outs of Microservices in today’s world.
    This is a no-hype, pragmatic post about why I think you should consider architecting your next project the way SOA and/or microservices suggest. No matter if it’s a greenfield approach or if you’re in dire need of refactoring. Please note: considering still keeps open the option of not taking that approach. After reading this, you will have a better idea about whether building multiple small components instead of a single, large component makes sense for your project. This post assumes that you...
    Monitoring of Docker environments is challenging. Why? Because each container typically runs a single process, has its own environment, utilizes virtual networks, or has various methods of managing storage. Traditional monitoring solutions take metrics from each server and applications they run. These servers and applications running on them are typically very static, with very long uptimes. Docker deployments are different: a set of containers may run many applications, all sharing the resource...
    SYS-CON Events announced today that Isomorphic Software will exhibit at DevOps Summit at 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Isomorphic Software provides the SmartClient HTML5/AJAX platform, the most advanced technology for building rich, cutting-edge enterprise web applications for desktop and mobile. SmartClient combines the productivity and performance of traditional desktop software with the simp...
    Sharding has become a popular means of achieving scalability in application architectures in which read/write data separation is not only possible, but desirable to achieve new heights of concurrency. The premise is that by splitting up read and write duties, it is possible to get better overall performance at the cost of a slight delay in consistency. That is, it takes a bit of time to replicate changes initiated by a "write" to the read-only master database. It's eventually consistent, and it'...