Thursday, October 9, 2014

q: What is MySQL? If the scale


I thought the translation was very good information is more (link below) noted the contents published in this GDC2010 corrugated containers Robert Zubek of Zynga. I've released an announcement will also receive a small part of the content is not as it stands. Please point out, so it might be wrong. The information is great for those who worry the problem because it contains comprehensive corrugated containers information about the services of Zynga. In size that occurs in small-scale problems in a completely different problem easy to view. If possible, it is helpful to many people, we translate every sentence.
It is interesting from the engineering point of view, because the field lies in the boundary of social games and web games. We think that makes the game fun and spend a lot of time to come back to the player. We know that these are engineering challenges. corrugated containers But you would like your own set, in particular the effect that occurs when a sudden influx of many unpredictable user, the web. You can be the best example of this is the Web SNS. Cause traffic fluctuations do not propagate through the network corrugated containers is expected to be effective
The Play 65 million people a day in Zynga. The play is 25 million 200 million in one month. However, usage patterns are very different. Achieved 1 million DAU (daily active user) in one week is a roller coaster kingdom. Go approximately five to between 700,000 to 1,700,000 people. Has grown to reach 6 million DAU (daily active corrugated containers user) from 0 people in FishVille 1 week another example. The massive scalability requirements. corrugated containers For Farmville has grown to 25 million DAU in just five months. The challenge is their degree of growth, but the growth curve is not steep. corrugated containers
Why use a web stack? Good scalability, the shorter the lifetime of the HTTP request. And load balancing is easy. Atomic each request, no state. Add server easy. Fair game for restrictions. In particular (but wandering NPC, and if that is in the game, if the reaction is a monster ...) action to start the HTTP server side to implement the difficulties. Is a request / response structures. There are several solutions, such as long polling, but this property is difficult to expand. Limit the number of connections is reached, the load balancer is difficult to handle.
You can think of the storage of the state between the request otherwise. The more commonly used in game development, rather than the web. 's That try and play Farmville. There will be a lot of apples harvested action. Doejyo in a number of different requirements on the server as a result. Click several times on the tree, but even if only on the first click, we will give an apology. This means that I store the state and need to determine the validity. If a large number of requests to the Web server, the client is not using the DB. DB will eventually overload. If you can ensure that the client is able to communicate only with a single Web server storing the data is there, you can save the DB later. But it's one trick. It is so broken session affinity using the browser client and malicious people difficult.
The MMO server with only minimal functionality MMO server. It maintains a socket connection corrugated containers for each client, and supports push as live games and chat or server side. In addition, maintaining the state of the game in a memory. We know that the player makes the load on the DB as the default login session affinity we. It's very different from the way the web! You can easily load balancing corrugated containers like a web.
Not related to the 'easy' scaling combined with SNS (combination of Facebook) is. The same thing is to call the host network to get the friends list. What is worrying is the delay time and the expansion problem. The need to build an infrastructure corrugated containers to solve your grows increasingly occur in stages with respect to the network performance degradation issues affected. Sometimes, the network provides a REST API client library provides.
This difference is usually a structural problem. If you do not have to change the scale-up code or change the design. But you need to expand the scale-out architecture. Zynga has been selected for scale-out. This has brought great success. In some situations, even if you do not get a fast computer as necessary. Obviously to get the low performance of the product easier. But, you need an application corrugated containers with scale-out architecture that supports.
Each table is split vertically. But what about simply increasing corrugated containers DAU is not scalable. corrugated containers You must access the other computer (box) in accordance with item a player.
This method divides horizontally relative to the Row can. Eoryeopgin but to get the best results. Enter each other DB row. You need a good way to connect to the DB mapping in row. The row striping between multiple devices. The rest of the calculation method of the number of DB primary key. hers to apply the same method to the unchanging property of the row. Like hers, which behaves like a logical RAID 0. We're able to increase the capacity of a good thing. The following order of adding a shard (shard) is. Add a read-only slave servers. The synchronization and shutdown. Disconnect the backup stops replication. The doubling the capacity in an instant.
YoVille: Split in two ways. Was divided into several Join. Data had to be re-designed patterns. Since the shard shard id is required for every query. I had difficulty trying to keep current with high data usage, data replication method. Could not be easier to join in the split between the shard to shard world. But how ssatjyo rain. Instead, it was several times a Select or denormalization corrugated containers (as opposed to normalization) the data. The so-called horse the same way as inventory and catalog items. If the catalog is small enough to leave just a memory.
I move on if you do not need to talk about caching DB. Is using the memory to get the speed. The memcache is the most fashionable nowadays. Attached to the network's RAM cache. It is also used to store the shared game state as well as query caching. Mean the same thing to win a hearing before the apple example. The simple key-value pairs stored in /. There are structural data, leave the game. Leave a mutex operation even for processing between the server and put. Warning: This is a (least recently used) LRU cache. DB is not. File system is not! Delete corrugated containers the old data put there is too much data. So you need to check the data you wrote to DB.
Is to redirect traffic to drop off the media from the media server, the other is to be useful. service corrugated containers can not be on the same game server and the server, because the swf file size, audio files, etc.. The media file will be written about all the network corrugated containers capacity. Put this into the CDN. If you are already corrugated containers in the cloud system can be put into it. Because resources are close to the user processes are fast CDN. Web server is by using a light using only the media files otherwise. But the big banks only game data server for the file you want to, not necessarily. The number corrugated containers of digits required for the performance of it.
Please remove the information you have about each other, and to increase or decrease the complexity, which means that load balancing is somewhat moving. Reduce communication corrugated containers between the internal server. All participants must be on a server participating in the live event. Does not imply a direct scale-out sharding. Sharding even through a third-party right. These extra services are also available for the event traffic.
We believe it is useful for capacity planning, we scale out. However, you can quickly change request. How to prepare a full server? corrugated containers This is another detailed plan. Geotingayo corrugated containers to prepare for the physical server? Geotingayo Or go to the cloud? If you have your own equipment you can control a lot of choice and you have a higher fixed costs. You can prepare corrugated containers a low cost Cloud presumably faster. You can also control the CPU IO virtualization not. If the cloud is easy to scale out than scale up.
You need to manage the server group custom dashboard. Munin is a graph and server monitoring is intended for Nagios alerts. Is to provide a separate graph for each server in one step for analyzing the family. You can isolate corrugated containers the server for the layers in the system, so it was a family. You can analyze the specific equipment you find to jump instantly use memcache.
q: What is MySQL? If the scale's another good DB? a: older and even better with DB community. But do not use the features that such a large DB. Looking back at the side sharding is not anything like a lot of transaction. Such a complex thing, it is easier to move to the application layer. When you start writing such a way is a good solution.
Do you ever have problems because PHP does not support asynchronous when the SNS binding: q? Lack of response is made if there is a thread in the SNS is delayed? will experience a delay when the SNS communication: a. But you do only part in the entire infrastructure

No comments:

Post a Comment