high_scalability high_scalability-2009 high_scalability-2009-699 knowledge-graph by maker-knowledge-mining
Source: html
Introduction: In my application, we receive request from many clients through socket.Client can connect to this socket and send data. this connection has to be maintained for indefinite hours. Client are continously sending data . There are so many clients simultaneously to server. I am using java to make application which listen on port and do processing on data. How can i scale this socket overhead. Is there any product which helps in maintening socket .
sentIndex sentText sentNum sentScore
1 In my application, we receive request from many clients through socket. [sent-1, score-0.649]
2 this connection has to be maintained for indefinite hours. [sent-3, score-0.723]
3 I am using java to make application which listen on port and do processing on data. [sent-6, score-0.792]
4 Is there any product which helps in maintening socket . [sent-8, score-0.842]
wordName wordTfidf (topN-words)
[('socket', 0.641), ('indefinite', 0.367), ('clients', 0.274), ('port', 0.214), ('listen', 0.212), ('maintained', 0.207), ('simultaneously', 0.195), ('receive', 0.171), ('sending', 0.166), ('connect', 0.163), ('connection', 0.149), ('send', 0.124), ('helps', 0.112), ('request', 0.111), ('client', 0.107), ('application', 0.101), ('processing', 0.094), ('many', 0.093), ('java', 0.092), ('product', 0.089), ('scale', 0.051), ('make', 0.045), ('using', 0.034), ('data', 0.027)]
simIndex simValue blogId blogTitle
same-blog 1 1.0 699 high scalability-2009-09-10-How to handle so many socket connection
Introduction: In my application, we receive request from many clients through socket.Client can connect to this socket and send data. this connection has to be maintained for indefinite hours. Client are continously sending data . There are so many clients simultaneously to server. I am using java to make application which listen on port and do processing on data. How can i scale this socket overhead. Is there any product which helps in maintening socket .
Introduction: Awesome paper on how particular synchronization mechanisms scale on multi-core architectures: Everything You Always Wanted to Know About Synchronization but Were Afraid to Ask . The goal is to pick a locking approach that doesn't degrade as the number of cores increase. Like everything else in life, that doesn't appear to be generically possible: None of the nine locking schemes we consider consistently outperforms any other one, on all target architectures or workloads. Strictly speaking, to seek optimality, a lock algorithm should thus be selected based on the hardware platform and the expected workload . Abstract: This paper presents the most exhaustive study of synchronization to date. We span multiple layers, from hardware cache-coherence protocols up to high-level concurrent software. We do so on different types architectures, from single-socket – uniform and nonuniform – to multi-socket – directory and broadcastbased – many-cores. We draw a set of observations t
3 0.12449747 205 high scalability-2008-01-10-Letting Clients Know What's Changed: Push Me or Pull Me?
Introduction: I had a false belief I thought I came here to stay We're all just visiting All just breaking like waves The oceans made me, but who came up with me? Push me, pull me, push me, or pull me out . So true Perl Jam (Push me Pull me lyrics) , so true. I too have wondered how web clients should be notified of model changes. Should servers push events to clients or should clients pull events from servers? A topic worthy of its own song if ever there was one. To pull events the client simply starts a timer and makes a request to the server. This is polling. You can either pull a complete set of fresh data or get a list of changes. The server "knows" if anything you are interested in has changed and makes those changes available to you. Knowing what has changed can be relatively simple with a publish-subscribe type backend or you can get very complex with fine grained bit maps of attributes and keeping per client state on what I client still needs to see. Polling is heavy man.
Introduction: Now that we have the C10K concurrent connection problem licked, how do we level up and support 10 million concurrent connections? Impossible you say. Nope, systems right now are delivering 10 million concurrent connections using techniques that are as radical as they may be unfamiliar. To learn how it’s done we turn to Robert Graham , CEO of Errata Security, and his absolutely fantastic talk at Shmoocon 2013 called C10M Defending The Internet At Scale . Robert has a brilliant way of framing the problem that I’ve never heard of before. He starts with a little bit of history, relating how Unix wasn’t originally designed to be a general server OS, it was designed to be a control system for a telephone network. It was the telephone network that actually transported the data so there was a clean separation between the control plane and the data plane. The problem is we now use Unix servers as part of the data plane , which we shouldn’t do at all. If we were des
5 0.12029839 1127 high scalability-2011-09-28-Pursue robust indefinite scalability with the Movable Feast Machine
Introduction: And now for something completely different, brought to you by David Ackley and Daniel Cannon in their playfully thought provoking paper: Pursue robust indefinite scalability , wherein they try to take a fresh look at neural networks, starting from scratch. What is this strange thing called indefinite scalability ? They sound like words that don't really go together: Indefinite scalability is the property that the design can support open-ended computational growth without substantial re-engineering, in as strict as sense as can be managed. By comparison, many computer, algorithm, and network designs -- even those that address scalability -- are only finitely scalable because their scalability occurs within some finite space. For example, an in-core sorting algorithm for a 32 bit machine can only scale to billions of numbers before address space is exhausted and then that algorithm must be re-engineered. Our idea is to expose indefinitely scalable computational power to program
6 0.11733934 1478 high scalability-2013-06-19-Paper: MegaPipe: A New Programming Interface for Scalable Network I-O
7 0.10116175 231 high scalability-2008-01-29-Too many databases
8 0.096991278 399 high scalability-2008-10-01-Joyent - Cloud Computing Built on Accelerators
9 0.094239987 464 high scalability-2008-12-13-Strategy: Facebook Tweaks to Handle 6 Time as Many Memcached Requests
10 0.092439666 1577 high scalability-2014-01-13-NYTimes Architecture: No Head, No Master, No Single Point of Failure
11 0.088252887 252 high scalability-2008-02-18-limit on the number of databases open
12 0.087886028 825 high scalability-2010-05-10-Sify.com Architecture - A Portal at 3900 Requests Per Second
13 0.087842003 318 high scalability-2008-05-14-New Facebook Chat Feature Scales to 70 Million Users Using Erlang
14 0.085541904 611 high scalability-2009-05-31-Need help on Site loading & database optimization - URGENT
15 0.082235403 1413 high scalability-2013-02-27-42 Monster Problems that Attack as Loads Increase
16 0.079781175 712 high scalability-2009-10-01-Moving Beyond End-to-End Path Information to Optimize CDN Performance
17 0.073795244 1565 high scalability-2013-12-16-22 Recommendations for Building Effective High Traffic Web Software
18 0.070996709 1255 high scalability-2012-06-01-Stuff The Internet Says On Scalability For June 1, 2012
19 0.067601934 459 high scalability-2008-12-03-Java World Interview on Scalability and Other Java Scalability Secrets
20 0.063135892 516 high scalability-2009-02-19-Heavy upload server scalability
topicId topicWeight
[(0, 0.074), (1, 0.007), (2, -0.018), (3, -0.034), (4, 0.01), (5, 0.006), (6, 0.06), (7, 0.025), (8, -0.061), (9, -0.016), (10, 0.017), (11, 0.057), (12, 0.018), (13, -0.029), (14, -0.009), (15, -0.011), (16, 0.034), (17, 0.01), (18, 0.037), (19, -0.012), (20, 0.004), (21, -0.018), (22, 0.007), (23, -0.031), (24, 0.06), (25, -0.003), (26, 0.055), (27, 0.013), (28, 0.029), (29, 0.001), (30, 0.027), (31, -0.015), (32, 0.024), (33, -0.022), (34, 0.022), (35, 0.054), (36, 0.035), (37, -0.017), (38, -0.033), (39, 0.03), (40, 0.038), (41, 0.007), (42, 0.008), (43, 0.013), (44, -0.05), (45, 0.016), (46, -0.021), (47, 0.029), (48, -0.025), (49, 0.002)]
simIndex simValue blogId blogTitle
same-blog 1 0.91280466 699 high scalability-2009-09-10-How to handle so many socket connection
Introduction: In my application, we receive request from many clients through socket.Client can connect to this socket and send data. this connection has to be maintained for indefinite hours. Client are continously sending data . There are so many clients simultaneously to server. I am using java to make application which listen on port and do processing on data. How can i scale this socket overhead. Is there any product which helps in maintening socket .
2 0.67675763 205 high scalability-2008-01-10-Letting Clients Know What's Changed: Push Me or Pull Me?
Introduction: I had a false belief I thought I came here to stay We're all just visiting All just breaking like waves The oceans made me, but who came up with me? Push me, pull me, push me, or pull me out . So true Perl Jam (Push me Pull me lyrics) , so true. I too have wondered how web clients should be notified of model changes. Should servers push events to clients or should clients pull events from servers? A topic worthy of its own song if ever there was one. To pull events the client simply starts a timer and makes a request to the server. This is polling. You can either pull a complete set of fresh data or get a list of changes. The server "knows" if anything you are interested in has changed and makes those changes available to you. Knowing what has changed can be relatively simple with a publish-subscribe type backend or you can get very complex with fine grained bit maps of attributes and keeping per client state on what I client still needs to see. Polling is heavy man.
3 0.67495686 1429 high scalability-2013-03-25-AppBackplane - A Framework for Supporting Multiple Application Architectures
Introduction: Hidden in every computer is a hardware backplane for moving signals around. Hidden in every application are ways of moving messages around and giving code CPU time to process them. Unhiding those capabilities and making them first class facilities for the programmer to control is the idea behind AppBackplane. This goes directly against the trend of hiding everything from the programmer and doing it all automagically. Which is great, until it doesn't work. Then it sucks. And the approach of giving the programmer all the power also sucks, until it's tuned to work together and performance is incredible even under increasing loads. Then it's great. These are two different curves going in opposite directions. You need to decide for your application which curve you need to be on. AppBackplane is an example framework supporting the multiple application architectures we talked about in Beyond Threads And Callbacks . It provides a scheduling system that supports continuous and high loa
4 0.67456758 1421 high scalability-2013-03-11-Low Level Scalability Solutions - The Conditioning Collection
Introduction: We talked about 42 Monster Problems That Attack As Loads Increase . And in The Aggregation Collection we talked about the value of prioritizing work and making smart queues as a way of absorbing and not reflecting traffic spikes. Now we move on to our next batch of strategies where the theme is conditioning , which is the idea of shaping and controlling flows of work within your application... Use Resources Proportional To a Fixed Limit This is probably the most important rule for achieving scalability within an application. What it means: Find the resource that has a fixed limit that you know you can support. For example, a guarantee to handle a certain number of objects in memory. So if we always use resources proportional to the number of objects it is likely we can prevent resource exhaustion. Devise ways of tying what you need to do to the individual resources. Some examples: Keep a list of purchase orders with line items over $20 (or whatever). Do not keep
5 0.66265845 318 high scalability-2008-05-14-New Facebook Chat Feature Scales to 70 Million Users Using Erlang
Introduction: Update : Erlang at Facebook by Eugene Letuchy. How Facebook uses Erlang to implement Chat, AIM Presence, and Chat Jabber support. I've done some XMPP development so when I read Facebook was making a Jabber chat client I was really curious how they would make it work. While core XMPP is straightforward, a number of protocol extensions like discovery, forms, chat states, pubsub, multi user chat, and privacy lists really up the implementation complexity. Some real engineering challenges were involved to make this puppy scale and perform. It's not clear what extensions they've implemented, but a blog entry by Facebook's Eugene Letuchy hits some of the architectural challenges they faced and how they overcame them. A web based Jabber client poses a few problems because XMPP, like most IM protocols, is an asynchronous event driven system that pretty much assumes you have a full time open connection. After logging in the server sends a client roster information and presence info
6 0.66225028 1425 high scalability-2013-03-18-Beyond Threads and Callbacks - Application Architecture Pros and Cons
7 0.62341529 772 high scalability-2010-02-05-High Availability Principle : Concurrency Control
8 0.61956638 406 high scalability-2008-10-08-Strategy: Flickr - Do the Essential Work Up-front and Queue the Rest
9 0.61865669 1373 high scalability-2012-12-17-11 Uses For the Humble Presents Queue, er, Message Queue
10 0.61379629 1312 high scalability-2012-08-27-Zoosk - The Engineering behind Real Time Communications
11 0.61353475 1413 high scalability-2013-02-27-42 Monster Problems that Attack as Loads Increase
12 0.61236781 981 high scalability-2011-02-01-Google Strategy: Tree Distribution of Requests and Responses
13 0.60315472 1001 high scalability-2011-03-09-Google and Netflix Strategy: Use Partial Responses to Reduce Request Sizes
14 0.59598434 1415 high scalability-2013-03-04-7 Life Saving Scalability Defenses Against Load Monster Attacks
15 0.59136689 1591 high scalability-2014-02-05-Little’s Law, Scalability and Fault Tolerance: The OS is your bottleneck. What you can do?
16 0.57680565 1478 high scalability-2013-06-19-Paper: MegaPipe: A New Programming Interface for Scalable Network I-O
17 0.57331288 1454 high scalability-2013-05-08-Typesafe Interview: Scala + Akka is an IaaS for Your Process Architecture
18 0.57053745 1418 high scalability-2013-03-06-Low Level Scalability Solutions - The Aggregation Collection
19 0.5694111 115 high scalability-2007-10-07-Using ThreadLocal to pass context information around in web applications
20 0.56667811 431 high scalability-2008-10-27-Notify.me Architecture - Synchronicity Kills
topicId topicWeight
[(1, 0.15), (2, 0.2), (11, 0.338), (30, 0.113)]
simIndex simValue blogId blogTitle
1 0.84095705 25 high scalability-2007-07-25-Paper: Designing Disaster Tolerant High Availability Clusters
Introduction: A very detailed (339 pages) paper on how to use HP products to create a highly available cluster. It's somewhat dated and obviously concentrates on HP products, but it is still good information. Table of contents: 1. Disaster Tolerance and Recovery in a Serviceguard Cluster 2. Building an Extended Distance Cluster Using ServiceGuard 3. Designing a Metropolitan Cluster 4. Designing a Continental Cluster 5. Building Disaster-Tolerant Serviceguard Solutions Using Metrocluster with Continuous Access XP 6. Building Disaster Tolerant Serviceguard Solutions Using Metrocluster with EMC SRDF 7. Cascading Failover in a Continental Cluster Evaluating the Need for Disaster Tolerance What is a Disaster Tolerant Architecture? Types of Disaster Tolerant Clusters Extended Distance Clusters Metropolitan Cluster Continental Cluster Continental Cluster With Cascading Failover Disaster Tolerant Architecture Guidelines Protecting Nodes through Geographic Dispersion Protecting Data th
2 0.81265068 668 high scalability-2009-08-01-15 Scalability and Performance Best Practices
Introduction: These are from Laura Thomson of OmniTi : Profile early, profile often. Pick a profiling tool and learn it in and out. Dev-ops cooperation is essential. The most critical difference in organizations that handles crises well. Test on production data. Code behavior (especially performance) is often data driven. Track and trend. Understanding your historical performance characteristics is essential for spotting emerging problems. Assumptions will burn you. Systems are complex and often break in unexpected ways. Decouple. Isolate performance failures. Cache. Caching is the core of most optimizations. Federate. Data federation is taking a single data set and spreading it across multiple database/application servers. Replicate. Replication is making synchronized copies of data available in more than one place. Avoid straining hard-to-scale resources. Some resources are inherently hard to scale: Uncacheable’ data, Data with a very high read+write rate
Introduction: Wikipedia and Wikimedia have some of the best, most complete real-world documentation on how to build highly scalable systems. This paper by Domas Mituzas covers a lot of details about how Wikipedia works, including: an overview of the different packages used (Linux, PowerDNS, LVS, Squid, lighttpd, Apache, PHP5, Lucene, Mono, Memcached), how they use their CDN, how caching works, how they profile their code, how they store their media, how they structure their database access, how they handle search, how they handle load balancing and administration. All with real code examples and examples of configuration files. This is a really useful resource. Related Articles Wikimedia Architecture Domas Mituzas' Blog
same-blog 4 0.70599681 699 high scalability-2009-09-10-How to handle so many socket connection
Introduction: In my application, we receive request from many clients through socket.Client can connect to this socket and send data. this connection has to be maintained for indefinite hours. Client are continously sending data . There are so many clients simultaneously to server. I am using java to make application which listen on port and do processing on data. How can i scale this socket overhead. Is there any product which helps in maintening socket .
5 0.68987817 908 high scalability-2010-09-28-6 Strategies for Scaling BBC iPlayer
Introduction: The BBC's iPlayer site averages 8 million page views a day for 1.3 million users. Technical Architect Simon Frost describes how they scaled their site in Scaling the BBC iPlayer to handle demand : Use frameworks . Frameworks support component based development which makes it convenient for team development, but can introduce delays that have to be minimized. Zend/PHP is used because it supports components and is easy to recruit for. MySQL is used for program metadata. CouchDB is used for key-value access for fast read/write of user-focused data. Prove architecture before building it . Eliminate guesswork by coming up with alternate architectures and create prototypes to determine which option works best. Balance performance with factors like ease of development. Cache a lot . Data is cached in memcached for a few seconds to minutes. Short cache invalidation periods keep the data up to date for the users, but even these short periods make a huge difference in performance.
6 0.68186849 457 high scalability-2008-12-01-Sun FireTM X4540 Server as Backup Server for Zmanda's Amanda Enterprise 2.6 Software
8 0.64412773 771 high scalability-2010-02-04-Hot Scalability Links for February 4, 2010
9 0.63521117 1236 high scalability-2012-04-30-Masstree - Much Faster than MongoDB, VoltDB, Redis, and Competitive with Memcached
10 0.63006157 105 high scalability-2007-10-01-Statistics Logging Scalability
11 0.62280619 136 high scalability-2007-10-28-Scaling Early Stage Startups
12 0.62192929 263 high scalability-2008-02-27-Product: System Imager - Automate Deployment and Installs
13 0.61191452 5 high scalability-2007-07-10-mixi.jp Architecture
14 0.61187571 783 high scalability-2010-02-24-Hot Scalability Links for February 24, 2010
15 0.60927492 1081 high scalability-2011-07-18-Building your own Facebook Realtime Analytics System
16 0.60768247 1055 high scalability-2011-06-08-Stuff to Watch from Google IO 2011
17 0.59829324 310 high scalability-2008-04-29-High performance file server
18 0.59262395 788 high scalability-2010-03-04-How MySpace Tested Their Live Site with 1 Million Concurrent Users
19 0.5883013 319 high scalability-2008-05-14-Scaling an image upload service
20 0.58625978 621 high scalability-2009-06-06-Graph server