Percona’s patches are now available to a wider audience via OurDelta, a community effort to provide builds with features (Percona patches, Google patches, etc) and storage engines (PBXT, Sphinx, etc) that aren’t in the main MySQL server. Arjen Lentz is really the brainchild behind this. Kudos Arjen!
mysql
Announce: Front End Performance Optimization
I guess many of you know us and so our company for MySQL related services. It is true this is majority of our business at this point but it is far from everything.
Our goal in reality is to help people to build and operate quality systems, typically web sites, which means we help customers with performance, scalability, high availability as the whole, not just MySQL related issues.
Indeed if you look at MySQL driven web site its properties will likely depend on a lot of factors - good web side configuration, which is about caching, proxying, using multiple data centers or CDN, serving static content reliably and efficiently. Then it comes to efficient web application architecture and code - being scalable, efficient, highly available, secure and fault tolerant. Caching in particular as memcache plays important role here besides MySQL though quite typical you also would see external queue, message parsing, search systems etc being important components besides MySQL.
Three ways to know when a MySQL slave is about to start lagging
The trouble with slave lag is that you often can't see it coming. Especially if the slave's load is pretty uniform, a slave that's at 90% of its capacity to keep up with the master can be indistinguishable from one that's at 5% of its capacity.
So how can you tell when your slave is nearing its capacity to keep up with the master? Here are three ways:
One: watch for spikes of lag. If you have Cacti (and these Cacti templates for MySQL) you can see this in the graphs. If the graphs start to get a little bumpy, you can assume that the iceberg is floating higher and higher in the water, so to speak. (Hopefully that's not too strange a metaphor.) As the slave's routine work gets closer and closer to its capacity, you'll see these spikes get bigger and "wider". The front-side of the spike will always be less than a 45-degree angle in ordinary operation[1] but the back-side, when the slave is catching up after lagging behind, will become a gentler and gentler slope.
Effective CSS workflow techniques
The scenario happens each day somewhere in CSS land. You have some existing software/cms and have to theme it with CSS. Assuming you are not familiar with the project, what would you do? Interestingly enough a lot of people tend to waste a lot of time doing things that could have been achieved in a fraction of time. Over the years working with css I have aquired a workflow process that seems to be quite unique.
Confessions of a CSS developer
- I passionately use the * {margin:0; padding:0} rule.
CSS Anatomy - a stylesheet deconstructed - apple.com
Welcome to the CSS Anatomy series. What better way to learn CSS best practices than to analyze css stylesheets of major websites. This first installment is about apple.com. The idea should not be a comprehensive article with in-depth revelations about the design, layout ... rather than - What can you learn in 10 minutes by analyzing the way in which they use CSS.
Apple sure is one of the coolest brand names in technology, no wonder their site now can and should adhere to modern web design standards. Divs, classes, no tables, media types, ajax libraries, separated stylesheets, extensive code organization, interesting varying layouts, it's all there for you to learn from.
They have many different stylesheets for the different sections of the site incl. multiple for the Apple store etc., for the scope of this little analysis I will focus on the styles of the main page. There is a little section on the differences between the main site styles vs the apple store styles below but that's it.
The Apple main site uses multiple external stylesheets
CSS 3 - The future shines bright
/* Columnas */
DIV {
width: 400px;
column-count: 4;
column-width: 100px;
column-gap: 10px
column-rule: none;
}
/* Multi-background */
.multi {
background: url('http://www.joostdevalk.nl/images/body-top.gif')
top left no-repeat,
url('http://www.joostdevalk.nl/images/banner_fresco.jpg')
top 11px no-repeat,
url('http://www.joostdevalk.nl/images/body-bottom.gif')
bottom left no-repeat,
url('http://www.joostdevalk.nl/images/body-middle.gif')
left repeat-y;
}
/*Esquinas redondeadas*/
.rounded {
background-color: #ccc;
border-radius: 5px;
border: 1px solid #000;
padding: 10px;
}
/* Tablas zebra */
tr:nth-child(2n+1) /* represents every odd row of a HTML table */
tr:nth-child(odd) /* same */
tr:nth-child(2n) /* represents every even row of a HTML table */
tr:nth-child(even) /* same */
/* Alternate paragraph colours in CSS */
p:nth-child(4n+1) { color: navy; }
p:nth-child(4n+2) { color: green; }
p:nth-child(4n+3) { color: maroon; }
p:nth-child(4n+4) { color: purple; }
/* Opacidad */
.opac02 { background: rgb(255, 0, 0) ; opacity: 0.2;}
.opac04 { background: rgb(255, 0, 0) ; opacity: 0.4;}
.opac06 { background: rgb(255, 0, 0) ; opacity: 0.6;}
.op Random but useful css snippets from all over
/* add filetype icons */
a[href^="mailto:"] {display:inline-block; padding-left:20px; line-height:18px; background:transparent url(../images/icons/icon_mailto.gif) center left no-repeat;}
a[href$='.pdf'] {display:inline-block; padding-left:20px; line-height:18px; background:transparent url(../images/icons/icon_pdf.gif) center left no-repeat;}
a[href$='.swf'], a[href$='.fla'], a[href$='.swd'] {display:inline-block; padding-left:20px; line-height:18px; background:transparent url(../images/icons/icon_flash.gif) center left no-repeat;}
a[href$='.xls'], a[href$='.csv'], a[href$='.xlt'], a[href$='.xlw'] {display:inline-block; padding-left:20px; line-height:18px; background:transparent url(../images/icons/icon_excel.gif) center left no-repeat;}
a[href$='.ppt'], a[href$='.pps'] {display:inline-block; padding-left:20px; line-height:18px; background:transparent url(../images/icons/icon_powerpoint.gif) center left no-repeat;}
a[href$='.doc'], a[href$='.rtf'], a[href$='.txt'], a[href$='.wps'] {display:inline-block; padding-left:20px; line-height:18px; background:transparent url(../images/icons/icon_doc.gif) center left no-repeat;}
a[href$='.zip'], a[href$='.gzip'], a[href$='.rar'] {displ CSS Anatomy - a stylesheet deconstructed - nytimes.com
Welcome to the 2nd article from the CSS Anatomy series - What can you learn in 10 minutes by analyzing the way in which big websites use CSS.. The first one shed some light on Apple, this one will be about the New York Times one of the best newspaper sites in the world.
The design director for NYTimes.com, Mr. Khoi Vinh says in this interview : "Its our preference to use a text editor, like HomeSite, TextPad or TextMate, to hand code everything, rather than to use a wysiwyg (what you see is what you get) HTML and CSS authoring program, like Dreamweaver. We just find it yields better and faster results.". You an tell the expertise by examining the stylesheets closely. From advanced CSS3 selectors to every known browser hack known to man, all is right there and ensures an almost 100% identical look in every browser imaginable.
Global embedded styles