background preloader

Server-side

Facebook Twitter

Dual DHCP DNS Server. Twitter Architecture. Toy solutions solving Twitter’s “problems” are a favorite scalability trope.

Twitter Architecture

Everybody has this idea that Twitter is easy. Scaling Instagram. Scaling Pinterest - From 0 to 10s of Billions of Page Views a Month in Two Years. Pinterest has been riding an exponential growth curve, doubling every month and half.

Scaling Pinterest - From 0 to 10s of Billions of Page Views a Month in Two Years

They’ve gone from 0 to 10s of billions of page views a month in two years, from 2 founders and one engineer to over 40 engineers, from one little MySQL server to 180 Web Engines, 240 API Engines, 88 MySQL DBs (cc2.8xlarge) + 1 slave each, 110 Redis Instances, and 200 Memcache Instances. Stunning growth. So what’s Pinterest's story? Samza. Spring Session 1.0.0.RELEASE. Hardening node.js for production: a process supervisor. This post outlines a basic process supervisor for node.js that can be used to manage multiple PIDs underneath the same application.

Hardening node.js for production: a process supervisor

It contains sample code for our child_monitor with a deep health check for socket servers. We started using node.js in the Silly Face Society because it seemed like the quickest way to get a (true, not web) socket server up for our “party mode”. Node.js w/1M concurrent connections! I’ve decided to ramp up the Node.js experiments, and pass the 1 million concurrent connections milestone.

Node.js w/1M concurrent connections!

It worked, using a swarm of 500 Amazon EC2 test clients, each establishing ~2000 active long-poll COMET connections to a single 15GB rackspace cloud server. This isn’t landing the mars rover, or curing cancer. Node.js in Production. When running a node application in production, you need to keep stability, performance, security, and maintainability in mind.

Node.js in Production

Outlined here is what I think are the best practices for putting node.js into production. By the end of this guide, this setup will include 3 servers: a load balancer (lb) and 2 app servers (app1 and app2). The load balancer will health check and balance traffic between the servers. The app servers will be using a combination of systemd and node cluster to load balance and route traffic around multiple node processes on the server. Guides. How we built our Real-time Analytics Platform » MaxCDN Blog. With the recent release of our Analytics Platform, we would like to give you a behind the scenes look of how we built it.

How we built our Real-time Analytics Platform » MaxCDN Blog

The amount of log data our worldwide network produces is staggering. Every day, our servers generate over 8 terabytes of raw log data (before compression). During our peak times, our servers are generating over 200,000 requests per second. As we grow, we will see this number continue to climb. It was imperative that we build a solution that would scale quickly based on demand. Handle Current And Future Insert VolumeHandle Unstructured Request DataMinimal Hardware with Redundancy And ScaleMinimal Software LayersImmediate Query Capabilities For Customers We wanted to rebuild our reporting and analytics platform to provide more informative metrics to our customers to assist them in making smart business decisions when it comes to their online content.

Solving Problems With Spring Boot. I first became aware of Spring Boot early in 2013.

Solving Problems With Spring Boot

At the time, we were rebuilding Spring's website and decided to write a collection of guides that could be consumed during a single lunch break (at spring.io/guides). Realizing how much code Spring Boot saved us from writing (and explaining to readers) thanks to its auto-configuration feature, we embraced it fully. Spark - A small web framework for Java. Skipfish - web application security scanner. Ganymed-ssh-2 - Ganymed SSH-2 implements the SSH-2 protocol in pure Java.

The Ganymed SSH-2 library allows one to connect to SSH servers from within Java programs.

ganymed-ssh-2 - Ganymed SSH-2 implements the SSH-2 protocol in pure Java

It supports SSH sessions (remote command execution and shell access), local and remote port forwarding, local stream forwarding, X11 forwarding, SCP and SFTP. Building a complete Tweet index. Today, we are pleased to announce that Twitter now indexes every public Tweet since 2006.

Building a complete Tweet index

Since that first simple Tweet over eight years ago, hundreds of billions of Tweets have captured everyday human experiences and major historical events. Our search engine excelled at surfacing breaking news and events in real time, and our search index infrastructure reflected this strong emphasis on recency. Thymeleaf: java XML/XHTML/HTML5 template engine. Getting Started · Building an Application with Spring Boot. If you are building a web site for your business, you probably need to add some management services.

Getting Started · Building an Application with Spring Boot

Spring Boot provides several out of the box with its actuator module, such as health, audits, beans, and more. Add this to your build file’s list of dependencies: compile("org.springframework.boot:spring-boot-starter-actuator") If you are using Maven, add this to your list of dependencies: <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency> A Web platform. RESTful CRUD With AngularJS - draptik. This post will show how to perform typical CRUD (create, read, update and delete) operations in AngularJS when consuming a RESTful web service. A prerequisite for this demo is a working RESTful web service.

For a basic introduction on creating a Java based RESTful web service, see my introduction on how to consume a RESTful web service with AngularJS created by a Java backend. Introducing GraphAware Neo4j Framework. 28 May 2014 by Michal Bachman Neo4j GraphAware Intermediate In this short blog post, I would like to introduce the GraphAware Neo4j Framework. Its goal is very ambitious: we'd like to make it as useful for Neo4j developers, as the Spring Framework is for Java developers. The Framework aims at speeding up development with Neo4j by providing a platform for building useful generic as well as domain-specific functionality, analytical capabilities, graph algorithms, and more. Features Overview On a high level, there are two key pieces of functionality, GraphAware Server and GraphAware Runtime. Speedy Web Application Framework – Introduction. If you have not read the quickstart, please do so now. While the quickstart gave a very quick introduction, now we are going to do something interesting.

Adding another controller. Gfk-ba/senbot. Www.dragome.com. Crawljax. Bard Framework. Asta4D Framework User Guide. Asta4D provides various rendering APIs to help developers render value to the page. By those APIs, developer can render text under a DOM element, set the attribute value for a DOM element, also can convert a list data to a list of DOM element, and also other various manipulation on DOM elements.

CDAP. 4 - One minute guide. Quick Start. In this tutorial, we show you how to develop a simple REST web application with Cuubez. Technologies and Tools used in this article: Contexts and Dependency Injection. Architecture · cocaine/cocaine-core Wiki. Node. Tools – Application Security – Google. Developers' Guide to Static Code Analysis. Getting Started. Getting Started will guide you through the process of adding Metrics to an existing application. UserGuide - javamelody - monitoring of JavaEE applications. Table of contents Introduction The goal of JavaMelody is to monitor Java or Java EE application servers in QA and production environments.

Java 8 Tutorials, Resources, Books and Examples to learn Lambdas, Stream API and Functional Interfaces. While release of Java 8 is still a few month away, GA is scheduled is in early next year (March 2014), Java community is already buzzing with expectation of functional programming and lambda expression. Many developers, programmers and bloggers has already shared lots of really good tutorial to learn lambda expressions, , probably the next big thing in Java world . While the term "lambda expression" may sound abstract and academic, Java 8 Lambdas can have a big impact on how you program every day. Java 8 is coming up with Lambda expressions, Stream API, Functional interfaces and default methods, which is eagerly waited through out the world. 7 New Tools Java Developers Should Know. JClarity – Performance Monitoring Launched last September, JClarity is now offering two products around Java performance: Illuminate and Censum. Illuminate is a performance monitoring tool, while Censum is an application focused on garbage collection logs analysis.

More than just collecting data or visualizing it, both tools provide actionable insights to solve the issues they detect.