Sun Virtual Desktop Infrastructure (VDI3) is a desktop virtualization technology that provides virtual desktop access, brokering, and hosting, enabling Windows, OpenSolaris, or Linux virtual desktops. These desktops can be accessed by using existing PCs, Macs or thin clients such as Sun Ray.
In a procedural language without the use of threads (or Inter
Process Communication via forks), to execute I/O requests they
are done one after another. Synchronous Queries produce at best a
Big-O of N such that N is an element of I/O communication
(queries) and N equals the number of queries needed to achieve
the requested dataset.
With IPC or threads we can speed up common O(N) problems to
reduce the N with parallelism, its still functionally a O(N) yet
from a single instance point of view N is much less because
threads (IPC) takes that Serial computing component and executes
the code in parallel. To better explain what I am talking about
lets look at some PHP code:
foreach($friends as $friend){
$data[] = getMySQLData(“SELECT * FROM AccountData WHERE userid = $friend);
}
The Primary key for the AccountData table is userid. Assuming
that you have 5000 friends, the …
A very interesting problem came up a while back when testing a
rebuild and failover procedure. I had just run a rebuild of a
slave server with InnoDB Hot Backup from the master. After the
failover, one query on three tables in three different databases
was not performing as it should. This was very odd to me given
that the same table in all three databases was acting up. Below
is the table structure and example query:
mysql> show create table plx_async_job\\\\G
*************************** 1. row
***************************
Table: plx_async_job
Create Table: CREATE TABLE `plx_async_job` (
`async_job_id` int(11) NOT NULL AUTO_INCREMENT,
`db_id` tinyint(3) unsigned NOT NULL DEFAULT '0',
`user_id` int(11) NOT NULL DEFAULT '0',
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`modified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`job_status` tinyint(4) NOT …
I've recently been accumulating some MySQL configuration variables that have defaults which have proven to be problematic in a high-volume production environment. The thing they all have in common is a network blip or two can trigger some very undesirable behavior.
max_connect_errors
If a client is having trouble connecting to MySQL, the server
will give up waiting after connect_timeout seconds and
increment the counter which tracks the number of connect errors
it has seen for the host. Then, when that value reaches
max_connect_errors, the client will be
locked out until you issue a FLUSH HOSTS
command.
Worse yet, if you have occasionally network blips and never need
to restart your MySQL boxes, these errors can accumulate over
time and eventually cause you middle of the night …
During this autumn I've had the pleasure of working closely with Georg Greve, Founder and former President of the Free Software Foundation Europe. Seeing that he had just left his previous post, we realized that his experience would be invaluable to do some of the heavy lifting involved in setting up processes for this fresh association. And so it has been!
As a result, we now have mundane things like a post box and accountant in Zurich where the non-profit association has its legal home. We are finally able to accept membership applications through the new website.
I'm currently planning a first 'alpha' release of MySQL Connector/Python, but I'm now doubting whether the naming and installation of the module is actually good.
Currently, the module lives, in site-packages/mysql/connector/, or import mysql.connector. Since this is an official MySQL, sorry, Sun Microsystems, project, I thought that the 'parent' module mysql would be good enough.
But is it? Would it break your modules with the same name?
The idea was to make more tools for Python and have them all under the mysql module, but maybe we need a smarter name for this? Maybe sunmysql/connector?
Comments are welcome! You can also email me directly (if you can figure out the cryptic anti-spam): geert_dot_vanderkelen_APETAIL_sun_dot_com.
This is the first of our weekly news catch-up and covers Nov 1 to Nov 11, 2009. This week the news catch-up is partial; next week I'll create the entry through the week and will try to be more comprehensive. This week we also cover old news on JRuby and OSGi. |
GlassFish and Middleware News
- IBM DeveloperWorks: Introducing Metro. Nice to see IBM refering to the GlassFish WebServices implementation as it is Used by Many, …
Just saw that my usage bill from the EC2 instances was over $400 since I started that up not too long ago. Therefore it is not a cost effective method to use for a demo application. I’ll be recording a walk-through of using the application soon so that new users can see what Kontrollbase offers [...]
I need help with this. I had a dream… Well, not so much as a dream, maybe a “It’d be cool to…”
I thought it’d be nice to discover new photos on flickr using your favorite photos and the people who also favorited those photos, and the favorite photos of those who also favorited my pictures. Still with me?
It’s actually a quite simple code (about 500 lines, check it on github: discovr), but it’s terribly slow. Some possible reasons:
- Way too much data. I’ve found people with around more than 18000 favorites, and there are photos with more than 2k fans. After limiting to 50 last …
Optimizing Oracle Performance
Optimizing Oracle Performance. By Cary Millsap, O’Reilly 2003. Page count: about 375 pages with appendices. (Here’s a link to the publisher’s site.)
This is easily one of the best books I’ve ever read on performance optimization. I’ve just finished reading it for the second-and-a-half time in two weeks, and I very rarely read a book more than once. I’ve been telling a lot of people about it.
Despite the title, it is actually not about Oracle performance. It is a book on how to optimize a) any system, …
[Read more]