The Internet of Things is a modern term of art for a relatively old concept (in technology time). The Internet of Things (IoT) is a way of virtualizing physical objects — of making those physical objects under the control of software-based systems.
An IoT environment is predicated on a strong communication design. The various objects need a way to communicate with an end user and (depending on the object and the architecture) with a central system or with other objects. There are different potential mechanisms for that communication, but a very simple and well-vetted method is an embeddable web server.
Like the name implies, this is a web (HTTP) server that is embedded within an application, that the application can use to interact both with external clients (as a typical web service) and with the device itself.
Wilfred Nilson, writing for embedded, the systems development site, had a really great description of an embeddable web server: it is “webbing traditional design.”
Continue reading ““Tech Preview”: Undertow”
According to a 2014 Forbes article (actually, the autoplay video on the article), 87% of people had never heard the term “the Internet of things.” That has changed rapidly in the last two years (research firm 451 Research pegs 2016 as the year that the Internet of Things goes mainstream). Still, as with many cloud computing concepts, IoT is a vague term.
A Simple Description of the Internet of Things
Consumer-centric devices have emerged over the last forty years, from ATMs to inventory tracking in vending machines. Smart phones were a massive jolt, introducing a new means to connect to and interact with both consumers and physical objects. That networked, digitized environment of physical objects is the Internet of Things. 451 Research had a fantastic term for it: the Internet of things “virtualizes the physical world.”
Continue reading “Intro to the Internet of Things”
Christina Lin (a technology evangelist for Red Hat) and Sameer Parulkar (middleware product marketing manager for Red Hat) will be conducting a webinar about data integration challenges which specifically face healthcare providers.
Like most industries, healthcare has its own regulatory burden on managing data, and data is a critical asset. Added challenges like mandatory electronic records increases the amount of data that IT departments have to maintain and add more complexity to how systems need to interact. This webinar breaks down a key path to system integration: creating a flexible and realistic data integration layer (in this case, using Red Hat Fuse). The webinar will cover a nice example, creating a microservices-based architecture for integration which connects two different data formats (Health Level-7 and Fast Healthcare Interoperability Resources) to create a fused set of APIs.
Registration is open. The webinar is May 17 at 11:00am Eastern Time (US).
Fun Follow Up: Webinar Q&A
I will collect any questions asked during the webinar, and I’ll do a follow-up post on Friday, May 20, to try to capture the most interesting (or confounding) questions that arise.
We are very excited to announce availability of Red Hat JBoss Data Grid (JDG) Version 7.0 Beta!
Based on the Infinispan project, JBoss Data Grid is a leading high-performance, highly-scalable, in-memory NoSQL store, which enables your enterprise to make fast, accurate decisions on large volumes of changing data and provides superior user experience for your customer-facing applications.
JDG 7.0 Beta introduces major new features in the areas of Real-time Data Analytics, ease of use and administration, and expanded polyglot support.
Real-Time Data Analytics
- Distributed Streams: In JDG 7.0, we introduce a distributed version of the Java 8 Stream API which enables you to perform rich analytics operations on data stored in JDG using the functional expressions available in the Stream API.
- Apache Spark and Hadoop Integration: JDG 7.0 features a new Resilient Distributed Dataset (RDD) and DStream integration with Apache Spark version 1.6. This enables you to use JDG as a highly scalable, high-performance data source for Apache Spark, executing Spark and Spark Streaming operations on data stored in JDG. We have also added a Hadoop InputFormat/OutputFormat integration, which enables use of tools from the Hadoop ecosystem on data stored in JDG.
Ease of Use and Administration
In JDG 7.0, we have released a new administration console which enables you to view a JDG cluster and perform clustered operations across its nodes. Operations include creating new caches and cache templates, adding or removing nodes, and deploying or executing remote tasks. We have also added the ability to shut down or restart a cluster in a controlled manner, with data restore from persistent storage.
Expanded Polyglot Support
Cassandra Cache Store
Additionally, JDG 7.0 introduces a new out-of-the-box Cassandra cache store, which enables you to persist the entries of a distributed cache on a shared Apache Cassandra instance.
Try It Today
Red Hat JBoss Middleware customers can download JDG 7.0 Beta from the Customer Portal
Beta documentation, including release notes, is available on the documentation page in the Portal.
The Advisor (subscription required) has some very nice words about Red Hat JBoss BPM Suite. What is apparently a pleasant surprise is the Suite part of BPM Suite.
JBoss has had its BPM project since 2003, jBPM. jBPM does business process modeling; at its core, it is a Java-based workflow engine. While it has a graphical editor (for more traditional, less technical business analysts), it also works with Eclipse, which makes it a business process tool specially adapted for Java developers to work with.
Red Hat JBoss BPM Suite, however, has expanded over the past few years to include functionality outside business process modeling, included but not limited to:
- Rules modeling
- Complex event process modeling
- Business resource planning
- Simulations and optimization
It’s not exactly bedtime reading (at 127 pages), but this reference architecture walks through the development process for a BPM application, including all of the different choices at each step and the reasoning for choosing a specific option. For a simpler look at the functionality, you can also see the JBoss BPM Suite data sheet.
* ICYMI: in case you missed it
There is a new Red Hat infographic that summarizes the benefits (and power) of integration. I am only using excerpts here because it is a large-ish infographic, and it’s definitely worth viewing the whole thing. This is just a taste. (Even better, download the underlying whitepaper; it is very much worth reading.)
The headline-making numbers come down, not surprisingly, to cost-savings:
- 488% ROI in three years
- Payback in 8.2 months
- Over $1.4 million in annual savings
The most interesting thing that I saw is definitely part of that headline, but it’s a smaller part of it — over half ($838,800) of those annual savings come from making your IT staff more productive. When an application is integrated, it requires about 41% fewer staff to maintain it. There is a lot a variation here (defining integration is a whole ‘nother blog post) but the idea of saving money, increasing individual productivity, and reducing the staff to maintain applications doesn’t necessarily translate into cutting costs or reducing staff. The power of that, the core value of integration as I read it, is reallocating those precious resources to different operations for your company. Instead of keeping your current apps running, you could have a lot more available people and space to try to do new things, to reinvest in what your company does and move forward.
That’s pretty cool.
There is “A Defense of Java” post over on DZone, which is an interesting enough post itself, by a guy from AppDynamics. What verges into very cool reading is the comment section (which made it DZone’s #1 commented article on Monday). There is a strong debate about the future of Java, other languages like Python and Node.js, and how major enterprises are building apps for high-traffic sites.
Your business has probably purchased a lot of proprietary software the same way it purchases any other goods – you buy product A and install it on machine B. There was something like a warranty period, where you may receive a certain level of support or a replacement for serious issues, but otherwise, it was just a good that was purchased. If it doesn’t meet your needs, you go out and buy something else – even if it is the same product just a version or two later.
But with open source, there’s a slightly different approach. There has to be. Unlike proprietary software, where the software is the product, with open source software, everything is already out there and available. And not just the end package; the sourcecode itself is freely available to your engineering department.
According to Gartner, 95% of companies are using open source software, so it is entirely reasonable to ask what are we purchasing?
What open source companies (like Red Hat) offer you isn’t a product; it’s an ecosystem of improvement and support.
A License Isn’t a Subscription
One thing to clarify – a software license is not the same thing as a software subscription.
Continue reading “Finding Value with (Red Hat) Subscriptions”
Scalability is one of those words that can mean very different things to different people, even in the same context or the same project. It’s not so much nuanced as it is that the definition matters on perspective — scale can be different for different goals.
There will be upcoming posts on data virtualization, in-memory data grids, integration methods — all areas where an understanding of your current and future needs, resourcing, and loads are critical for planning. Going into those concepts, it helps to understand scale — not just “make it bigger,” but how you make it bigger and when and why.
Continue reading “Intro to Scalability”
The Red Hat Developer’s Program has added something new: A developer’s subscription. For free.
Typically Red Hat subscriptions are associated with a system (physical, virtual, or cloud) to make it easier to audit where software packages are installed and how many subscriptions you need to purchase. Developer’s subscriptions work a little differently; they’re associated with a specific person, not a specific machine. This allows developers to have multiple systems running in their dev environment without being limited by available corporate subscriptions.
Some of the vital statistics for the developer’s subscription:
- A developer’s subscription is available for users with an account at developers.redhat.com.
- This subscription covers systems within a development environment only, not QA or production systems.
- This subscription — as with all Red Hat subscriptions — allows full access to the Customer Portal, knowledgebase articles, discussions, and labs.
- They can be used on systems running on physical machines or virtual systems including Hyper-V, KVM, VirtualBox, and VMware.
- The developer’s subscription is for Red Hat Enterprise Linux Server (not Workstation, Power, or other flavors). It includes access to Red Hat Developer Toolkit and Software Collections, which include common developer tools like Git and Eclipse; languages like Python, Java, GCC, Node.js, PHP, and Ruby; databases like MongoDB and PostgreSQL; and web servers like Apache HTTP and Tomcat.
The developer’s subscription covers Red Hat Enterprise Linux and its toolsets, but there is another toolset available that is critical for developers who are using container-based applications. That’s the Container Development Kit (CDK). Members of the Red Hat Developer Program can access the CDK in addition to the developer subscription. The CDK helps create containers which can run on Linux, RHEL Atomic, or OpenShift v3.