13. April 2008, 07:29, by Silvan Mühlemann

Pitfalls with MySQL and auto_increment

There’s a number of pitfalls one should be aware of when working with AUTO_INCREMENT fields in MySQL. Last week, we fell in each of them:

We have the table photos which contains all 15 million pictures on tilllate.com. This table is MyISAM and has id INT NOT NULL AUTO_INCREMENT as the primary key. The position of the auto increment counter was at 112′606′834.
(more…)

Filed under: Database
18. March 2008, 03:44, by Maarten Manders

Enterprise Manboobs!

Martin Fowler and Jim Webber doing stand-up comedy Last week, I was lucky to go to QCon 2008 in London to meet with all the big names in the software industry. This was a great opportunity to see what everyone’s working on and to get a feeling for the newest trends in software development. Here’s what my gut says about the world of software development after QCon 2008 (part 1):

(more…)

Filed under: PHP, Web Development
22. February 2008, 12:12, by Steven Varco

New DB Servers

Our Dell PowerEdge 2950 Servers for the new DB Cluster has just arrived and I’m very excited, unpacking them. ;-)

Boxed Servers

(more…)

Filed under: Arbeit, Database, IT Infrastructure
5. February 2008, 17:09, by Silvan Mühlemann

Comparing queries with mk-query-profiler and diff

EXPLAIN is not the only way to analyze query perfomance im MySql because some things are not being taken into account. For example LIMIT clauses or the cost of the optimizer. There is also the mk-query-profiler.

An interesting way to compare the performance of two queries is to use mk-query-profiler along with diff

Here’s how you do it. As an example I take the queries from this mysql performance blog article article. Because I’d like to learn what excactly SQL_CALC_FOUND_ROWS does.

(more…)

Filed under: Database
28. January 2008, 16:55, by Mario Rimann

Night shift: Server move

Moving all servers of tilllate.com in one night?

Maybe you’ve read our short announcement on the tilllate website last week: We were offline for some planned maintenance.

Lots of servers…

In detail, we moved all servers to a new cage in the datacenter. We like to give you some insight, of what happened after switching off the tilllate webservers. (more…)

Filed under: IT Infrastructure
18. January 2008, 17:47, by Silvan Mühlemann

My favourite keyboard moves in Firefox

A weird keyboardI am a lazy guy. I hate moving my hand away from the keyboard to the mouse and back. So I try to use as much keyboard shortcuts as possible. Here’s 2 ways I improve my productivity by avoiding device switches in Firefox:

Keyboard shortcuts

Here’s my personal Top 5 of keyboard shortcuts:

1. Ctrl+L Move the focus to the location/URL field
2. Ctrl+K Move the focus to the search field
3. Ctrl+H Open the history
4. Ctrl+F / F3 Open the search. F3 repeats the last search
5. Ctrl+T Open a new tab

You’ll find a lot more useful shortcuts here

Keywords for your bookmarks

To access my bookmarks quickly I usually use Ctrl+L and then type a keyword. n is our Nagios problem overview. c is our confluence homepage.

Combined with the search variable %s I have extremely fast wikipedia searches (wiki foo) or translations from German to English (leoe fahrvergnügen).

How to set it up? micrux.net tells you more.

Thanks, Patrice, for showing me this. You helped me save hours switching between mouse and keyboard.

Filed under: Uncategorized
7. January 2008, 08:39, by Leo Büttiker

Trevi is online!

Trevi FountainTrevi is not only a fountain in Italy, it’s our new application framework as well. We migrated our first pages to this new platform and brought them online three weeks ago. But let me explain the story of Trevi.

Another Framework?

There’re already thousands of web frameworks out there so I would sink into the ground if we really wrote another one. But serving pages for 2 million unique clients, it would also not have been a solution to just go to a shop and take the beautiful looking, nice boxed xyz framework from a big company. So my co-worker (and Trevi project lead) Maarten started a year ago to evaluate a framework that fits our needs best.
(more…)

Filed under: Management, PHP
5. January 2008, 22:16, by Leo Büttiker

Why paging needs a lot of performance

On the view of your database the worst thing you can do in your web app is paging. Paging is horrible in the view of performance. To explain let me make a little example:

SELECT SQL_CALC_FOUND_ROWS gb.*,
 u.username,
        u.uid,
        u.geschlecht,
        u.mitfoto,
        [... some more fields...]
FROM member_gold_guestbook gb
LEFT JOIN users u ON u.uid=gb.uid_from
[... some more left joins...]
WHERE gb.uid_to='22152'
AND visible='1'
LIMIT 0,10;

That’s not that bad at all, but when you go to page 300 your database server will hate you for this. The database server has not only to calculate the 10 items you want to show but also all 3000 previous items.

Sure you may argue nobody will ever go to page 300. Somebody will not, but “googlebot” and his evil brothers will. And the bad thing is that you can do nothing against it, as long as you need paging. There are just a few tricks that may reduce your server load a bit.

(more…)

Filed under: Database, PHP
30. December 2007, 23:49, by Silvan Mühlemann

Holiday season: The best time to… work

Christmas TreeFor me, the time around Christmas and New Year is the best time of the year. Of course, there’s the peaceful family reunions around the christmas tree. The cozy evenings at home on the couch. Or days where you can shamelessly sleep in. In my case I am expecting my son Orell who should be born anytime.

But stop: This is a business related blog. And so I am not talking about my private life. When I say “the best time of the year” I am thinking about work. There’s no better time of year for not taking vacations. Here’s why:
(more…)

Filed under: Management
20. December 2007, 11:30, by Vladimir Tišma

Graceful degradation of AJAX controls (Thank You Tube)

In many companies, management decides to setup a web proxy server to be able to control/disable the non-busines-related content. YouTube could probably be blamed for many hours spent doing non-business stuff.

Well, I use YouTube myself. Sometimes when taking a break and sometimes to listen to music that goes with the video, and you don’t have to watch it at all, but it’s probably the fastest way find and listen to a certain song if it’s available. Well, this time, YouTube will be a critical factor to finding the elegant solution.

(more…)

Filed under: PHP, Web Development
Next Page »

© 2008 tilllate AG - Powered by WordPress