• Complain

Francesco Cesarini - Designing for Scalability with Erlang/OTP

Here you can read online Francesco Cesarini - Designing for Scalability with Erlang/OTP full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 0, publisher: O’Reilly, genre: Computer. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

Francesco Cesarini Designing for Scalability with Erlang/OTP

Designing for Scalability with Erlang/OTP: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Designing for Scalability with Erlang/OTP" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Francesco Cesarini: author's other books


Who wrote Designing for Scalability with Erlang/OTP? Find out the surname, the name of the author of the book and a list of all author's works by series.

Designing for Scalability with Erlang/OTP — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Designing for Scalability with Erlang/OTP" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Designing for Scalability with Erlang/OTP
Francesco Cesarini
Steve Vinoski
Beijing Cambridge Farnham Kln Sebastopol Tokyo Preface Conventions Used in - photo 1

Beijing Cambridge Farnham Kln Sebastopol Tokyo

Preface
Conventions Used in This Book

The following typographical conventions are used in this book:

Italic

Indicates new terms, URLs, email addresses, filenames, and file extensions.

Constant width

Used for program listings, as well as within paragraphs to refer to program elements such as variable or function names, databases, data types, environment variables, statements, and keywords.

Constant width bold

Shows commands or other text that should be typed literally by the user.

Constant width italic

Shows text that should be replaced with user-supplied values or by values determined by context.

Tip

This icon signifies a tip, suggestion, or general note.

Caution

This icon indicates a warning or caution.

Using Code Examples

This book is here to help you get your job done. In general, you may use the code in this book in your programs and documentation. You do not need to contact us for permission unless youre reproducing a significant portion of the code. For example, writing a program that uses several chunks of code from this book does not require permission. Selling or distributing a CD-ROM of examples from OReilly books does require permission. Answering a question by citing this book and quoting example code does not require permission. Incorporating a significant amount of example code from this book into your products documentation does require permission.

We appreciate, but do not require, attribution. An attribution usually includes the title, author, publisher, and ISBN. For example: Book Title by Some Author (OReilly). Copyright 2011 Some Copyright Holder, 9781449373191.

If you feel your use of code examples falls outside fair use or the permission given above, feel free to contact us at .

Safari Books Online
Note

Safari Books Online is an on-demand digital library that lets you easily search over 7,500 technology and creative reference books and videos to find the answers you need quickly.

With a subscription, you can read any page and watch any video from our library online. Read books on your cell phone and mobile devices. Access new titles before they are available for print, and get exclusive access to manuscripts in development and post feedback for the authors. Copy and paste code samples, organize your favorites, download chapters, bookmark key sections, create notes, print out pages, and benefit from tons of other time-saving features.

OReilly Media has uploaded this book to the Safari Books Online service. To have full digital access to this book and others on similar topics from OReilly and other publishers, sign up for free at http://my.safaribooksonline.com.

How to Contact Us

Please address comments and questions concerning this book to the publisher:

OReilly Media, Inc.
1005 Gravenstein Highway North
Sebastopol, CA 95472
800-998-9938 (in the United States or Canada)
707-829-0515 (international or local)
707-829-0104 (fax)

We have a web page for this book, where we list errata, examples, and any additional information. You can access this page at:

http://www.oreilly.com/catalog/9781449373191

To comment or ask technical questions about this book, send email to:

For more information about our books, courses, conferences, and news, see our website at http://www.oreilly.com.

Find us on Facebook: http://facebook.com/oreilly

Follow us on Twitter: http://twitter.com/oreillymedia

Watch us on YouTube: http://www.youtube.com/oreillymedia

Chapter 1. Introduction

You need to implement a fault tolerant, scalable soft real time system with requirements for high availability. It has to be event driven and react to external stimulus, load and failure. It must always be responsive. You have heard, rightfully so, of many success stories telling you Erlang is the right tool for the job. And indeed it isbut while Erlang is a powerful programming language, its not enough on its own to group these features all together and build complex reactive systems. To get the job done correctly, quickly and efficiently, you also need middleware, reusable libraries, tools, and design principles that tell you how to architect and distribute your system.

Our goal with this book is to explore multiple facets of scalability, as well as related topics such as concurrency, distribution, and fault tolerance, in the context of the Erlang programming language and its OTP framework. Erlang/OTP was created when the Ericsson Computer Science Laboratory (CSL) set out to investigate how they could efficiently develop the next generation of telecommunications systems in an industry where time to market was becoming critical. This was before the web, before tablets and smartphones, massively multiuser online gaming, messaging, and The Internet of Things.

At that time, the only systems that required the levels of scalability and fault tolerance we take for granted today were boring phone switches. They had to handle massive traffic spikes on New Years Eve, fulfill regulatory obligations for the availability of calls to emergency services, and avoid painfully expensive contractual penalties forced on the infrastructure suppliers who caused outages. In laymans terms, if you picked up the phone and did not hear the dial tone on the other end, you could be sure of two things: top level management got into serious trouble and the outage would make the front page news in the papers. No matter what, those switches were not allowed to fail. Even when components were failing, requests had to be handled.

As a result, telecoms switches had to react to failure as much as they had to react to load and internal events. So while the Ericsson Computer Science Lab did not set out to invent a programming language, the solution to the problem they were out to solve happened to be one. Its a great example of inventing a language that facilitates the task of solving specific, well-defined problems.

Defining the Problem

As we show throughout this book, Erlang/OTP is unique among programming languages and frameworks in the breadth, depth, and consistency of the features it provides for scalable, fault tolerant systems with requirements for high availability. Designing, implementing, operating and maintaining these systems is challenging. Teams that succeed in building and running them do so by continuously iterating through those four phases, constantly using feedback from production metrics and monitoring to help find areas they can improve not only in their code, but also in their development and operating processes. Successful teams also learn how to improve scalability from other sources such as testing, experimentation, benchmarking, and they keep up on research and development relevant to their system characteristics. Non-technical issues such as organizational values and culture can also play a significant part in determining whether teams can meet or exceed their system requirements.

We used the terms distributed , fault tolerant , scalable , soft real time

Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Designing for Scalability with Erlang/OTP»

Look at similar books to Designing for Scalability with Erlang/OTP. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Designing for Scalability with Erlang/OTP»

Discussion, reviews of the book Designing for Scalability with Erlang/OTP and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.