InfoQ Homepage Architecture & Design Content on InfoQ
-
Web APIs and the n+1 Problem
The n+1 one problem doesn’t just affect ORMs. Any kind of Web API, RPC/Web Service or RESTful, can suffer from the same performance problems. In this article, Ali Kheyrollahi discusses some of the common scenarios that lead to n+1 in web APIs and ways to correct them.
-
Ansible’s View on IT Automation
Michael DeHaan, creator of Ansible, introduces the general-purpose IT automation system. He describes the tool’s guiding principles: simplicity, ease of use and maximum security. The philosophy behind its community is also discussed, including the importance of Ansible’s plugin-based model. Michael uses a simple but common scenario to demonstrate Ansible.
-
8 Great Java 8 Features No One's Talking about
In this article Tal Weiss focuses on some lesser known API's in the new Java 8.
-
Exploring the ENTIRE DevOps Toolchain for (Cloud) Teams
When assessing technology that empowers a DevOps transformation, it’s easy to focus in on the headline capabilities (“configuration management!”) and miss out on the bigger picture. How can teams shipping cloud (or on-premises) applications use the full suite of DevOps technologies to simplify delivery and management at scale? This article classifies and explains key enabling technologies.
-
Virtual Panel on Reactive Programming
Reactive programming is a very hot topic: InfoQ asked three proponents of reactive programming how their libraries and frameworks achieve reactiveness and what this means for the developer. The participants are Viktor Klang (Akka), Timothy Baldridge (Core.Async), and Jafar Husain (RxJava).
-
Microservices: Decomposing Applications for Deployability and Scalability
What are microservices? This article describes the increasingly popular Microservice architecture pattern, used to architect large, complex and long-lived applications as a set of cohesive services that evolve over time.
-
Data Modeling in Graph Databases: Interview with Jim Webber and Ian Robinson
Data modeling with Graph databases requires a different paradigm than modeling in Relational or other NoSQL databases like Document databases, Key Value data stores, or Column Family databases. InfoQ spoke with Jim Webber and Ian Robinson about data modeling efforts when using Graph databases.
-
From MDM to MDM: From Managing Devices to Apps to Data
Mobile operations management (MOM) is one of the top priorities of today’s modern enterprise. While the first generation of MOM solutions evolved around the management of mobile devices and applications, organizations have quickly realized that an effective enterprise mobile infrastructure requires addressing a more difficult challenge: managing and securing mobile business data.
-
Restify and Mobilize Your Data
Val Huber explains creating a RESTful API from an existing database schema, extending the API to define multi-table hierarchical resources, and adding behavior using declarative reactive expressions.
-
Reactive Cloud Actors: An Evolvable Web of Events
Reactive Cloud Actors are an utilization of Carl Hewitt's Actor model which can be used to leverage the power of modern distributed systems. This article demonstrates an implementation of Reactive Cloud Actors, considering a complex business scenario that is delivered in an elegant and thoughtful solution.
-
Russ Miles on Antifragility and Microservices
Currently, Antifragility and Microservices are trending topics and this might be a hint that there are new architectural paradigms or design patterns on their way for building application systems.. We're discussing these new concepts with Russ Miles to find out what they are good for and how to apply them in an architect's or developer's daily business - for existing applications and those to come
-
How Functional is Java 8?
It's been said that Java 8 is bringing Functional Programming to Java. In this article Ben Evans discusses what it means to be functional. By looking at the evolution of Java - particularly its type system, we can see how the new features of Java 8, especially lambda expressions, change the landscape, and provide some key benefits of the functional programming style.