In his presentation "Understanding Hardware Transactional Memory" at QCon New York 2016, Gil Tene introduces hardware transactional memory (HTM). Whereas the concept of HTM is not new, it is now finally available in commodity hardware. The purpose of HTM is to be able to write to multiple addresses in memory in an atomical way so that there cannot be inconsistencies in cooperation other threads.
After 8 years of development, Lisp Flavoured Erlang (LFE) has reached version 1.0, bringing stable support for Lisp programming on the Erlang virtual machine (BEAM). LFE was created by Robert Virding, one of the initial developers of Erlang. InfoQ has spoken with Duncan McGreggor, current maintainer of LFE.
Microsoft has announced and made available the preview of Azure Service Fabric (ASF), a cloud platform including a runtime and lifecycle management tools for creating, deploying, running and managing microservices. ASF microservices can be deployed on Azure or on-premises on Windows Server private or hosted clouds. Support for Linux is to come in the future.
Google has published the paper "Large-scale cluster management at Google with Borg", unveiling details on a technology that was very little spoken about in the past.
Atlassian recently released Stash Data Center, a highly available and horizontally scalable deployment option for its on-premises source code and Git repository management solution Stash. New nodes can be added without downtime to provide active-active clustering and instant scalability.
Google has recently published a paper providing architectural guidelines for creating a scalable and resilient solution running on their cloud platform. This article digests the respective paper extracting the main ideas and advice. These guidelines can be used with minor changes for deploying web applications on other clouds.
Network performance, virtualization and testing are some of the considerations to address performance and scalability issues with NoSQL databases. Alex Bordei wrote about scaling NoSQL databases and tips for increasing performance when using these data stores.
The second version of the Reactive Manifesto was announced at September's GOTO conference in Aarhus. Martin Thompson discusses the need for a revised version of the Manifesto and what its changes mean for the burgeoning reactive community.
Amazon Web Services recently added several features to its Auto Scaling service to improve control over the managed Amazon EC2 instances. It is now possible to hook into the pending and terminating lifecycle state transitions to perform custom operations, which is also available for in service instances via a new standby state. The DetachInstances API now allows to remove instances from a group.
In a recent article on Medium, TypeSafe's Kevin Webber argues that reactive programming "isn’t just another trend but rather the paradigm for modern software developers to learn" since it helps them to build systems that are responsive, resilient, and scalable. He also suggests that actor-based concurrency is the most convenient foundations for a reactive system.
FoundationDB has announced the general availability of SQL Layer, and ANSI SQL engine that runs on top of their key-value store. The result is a relational database backed up by a scalable, fault-tolerant, shared-nothing, distributed NoSQL store with support for multi-key ACID transactions.
Google has unveiled their new data-warehouse called Mesa. Mesa is a system that scales across multiple data centers and processes petabytes of data, while being able to respond to queries in sub-second time and maintain ACID properties.
Last week Vaughn Vernon published Dotsero, a .NET actor model toolkit that follows the Akka API and earlier this year a preview of the Orleans framework based on the Actor model was released by Microsoft Research. In a recent twitter discussion Vaughn and Sergey Bykov, lead of the Orleans project at Microsoft Research, discussed the different approaches taken in Orleans and Dotsero.
Causal Consistency models offer an alternative Eventual Consistency for distributed systems; both models should be weighed against your system's requirements and risk tolerance.
This article has been updated based on community and Jing Chen (Facebook)’s reaction. (See the Update section below.) Facebook came to the conclusion that MVC does not scale up for their needs and has decided to use a different pattern instead: Flux.