• user warning: Table './avideotutorial/votingapi_vote' is marked as crashed and last (automatic?) repair failed query: SELECT * FROM votingapi_vote v WHERE 1 = 1 AND v.content_type = 'node' AND v.content_id = 200 AND v.tag = 'upndown' AND v.uid = 0 AND v.vote_source = '3.143.23.176' AND v.timestamp >= 1714030075 in /data/avideotutorial/sites/all/modules/votingapi/votingapi.module on line 557.
  • user warning: Table './avideotutorial/votingapi_vote' is marked as crashed and last (automatic?) repair failed query: SELECT * FROM votingapi_vote v WHERE 1 = 1 AND v.content_type = 'node' AND v.content_id = 200 AND v.tag = 'upndown' AND v.uid = 0 AND v.vote_source = '3.143.23.176' AND v.timestamp >= 1714030075 in /data/avideotutorial/sites/all/modules/votingapi/votingapi.module on line 557.

Beginner's Guide to Website Performance with MySQL and memcached


Beginner's Guide to Website Performance with MySQL and memcached
Adam Donnison (Sun Microsystems)

Download the slides in .ODP format at http://assets.en.oreilly.com/1/event/21/Beginner%27s%20Guide%20to%20Webs......

The description, taken from the official conference page is at http://www.mysqlconf.com/mysql2009/public/schedule/detail/7009

Memcached is a distributed memory object caching system that is getting a lot of press at the moment for its ability to provide a high-performance front-end for database applications. Sure, memcached can do wonders, but where is it most effective and what are the pain points?

When a site grows the site administrator starts to worry about how to maintain performance as the hit count rises. Should extra hardware be thrown at the problem synchronisation issues start to rear their heads. Writing caching code is sometimes problematic and you have to be sure that the target of the caching warrants the extra code overhead. Memcached can assist in this phase (and through the majority of the growth phase of the site), however it is sometimes difficult to work out where and how to implement memcached for the best performance.

When MySQL.com found it had started to hit limits of performance the web team looked for tools to help handle the load. On the top of the list was memcached, chosen primarily for its simplicity and utility. Because it is agnostic to the data being stored memcached can be used for just about any application that can store and retrieve data by key. The distributed nature also allowed building a resilient solution, without the need for extra hardware.

In this session Adam Donnison will take you through the decision making process leading to the deployment of memcached on the MySQL.com web stack. In a step-by-step manner with real-world examples in PHP and MySQL 5.1, Adam will cover: * Basic architecture of a memcached-enabled web application * Setup of memcached on single and multiple servers * Identifying code targets that can benefit from memcached * How memcached can assist with replication lag * When not to use memcached * How to write code to take advantage of memcached * Handling cache timeouts and missing data * Building PHP classes to ease memcached integration in your web application stack


See video

Comments

Post new comment

  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options