Twitter adopte Lucene pour sa partie search

Twitter
Avec plus de 1 000 tweets par seconde et 12 000 requêtes par seconde les Ingénieurs de Twitter semble avoir renoncé à maintenir l’architecture MySQL et adopté Lucene comme nouveau moteur de recherche.
L’adoption de Lucene apporte 2 améliorations notables:
  • amélioration significative des performances de Garbage Collection
  • structure de données lock-free permettant de réduire le temps de latence des opérations prioritaires.

Cette nouvelle architecture de recherche est plus rapide et scalable utilisant seulement 5% des ressources de la plateforme.

Pour plus d’informations voici les slides de Kevin Weil, Ingénieur chez Twitter, présenté au Web 2.0 Expo à New York le mois dernier:

Web

Google derrière le phénomène Wordle

Même si les crédits du projet Wordle parle d’IBM Research pour la paternité du projet … j’ai quelques soupçons (fondés) sur une autre entreprise qui serait derrière tout ça: Google.

On peut voir apparaître du Google à différents endroits:

host wordle.net
wordle.net mail is handled by 10 aspmx.l.google.com.

Quand le script python part en Timeout:

Traceback (most recent call last):
File "/base/python_lib/versions/1/google/appengine/ext/webapp/__init__.py", line 499, in __call__
handler.get(*groups)
File "/base/data/home/apps/wordle/12.2/wordle/wordle.py", line 246, in get
self.handle_wordle(get_wordle(key))
File "/base/data/home/apps/wordle/12.2/wordle/wordle.py", line 259, in handle_wordle
wordle.put()
File "/base/python_lib/versions/1/google/appengine/ext/db/__init__.py", line 618, in put
return datastore.Put(self._entity)
File "/base/python_lib/versions/1/google/appengine/api/datastore.py", line 162, in Put
raise _ToDatastoreError(err)
File "/base/python_lib/versions/1/google/appengine/api/datastore.py", line 1627, in _ToDatastoreError
raise errors[err.application_error](err.error_detail)
Timeout: datastore timeout: operation took too long.

Bizarre…

En attendant plus d’infos je vous gratifie de mon Wordle:

Web

Installer Java 2 sur debian etch

Installation rapide à partir du dépot ‘non-free’.
Déconseillé sur un serveur de production.

Ajouter dans /etc/apt/sources.list
deb http://ftp.us.debian.org/debian/ etch main contrib non-free

Updater
sudo apt-get update

Installer le paquet debian Java correspondant à vos besoins:
sudo apt-get install sun-java5-jre
ou
sudo apt-get install sun-java5-jdk

Si vous ne savez pas quelle est la différence entre JRE et JDK vous pouvez lire cet article.

Installer un connecteur JDBC pour MySQL
sudo apt-get install libmysql-java

App

JRE, JDK, SDK? Quelle est la différence ?

  • JRE : Java Runtime Environement. Désigne la machine virtuelle et l’ensemble des outils nécessaires pour exécuter une application Java sur votre machine. Elle va traduire le langage Java (plus précisément le byte-code) en langage propre au système d’exploitation. Il en existe donc plusieurs, chacun associées à un système d’exploitation.
  • JDK : Java Development Kit. Ancien terme désignant le SDK.
  • SDK : Standard Development Kit. Désigne l’ensemble d’outils nécessaires au développeur Java. Celui-ci contient :
    • une JRE,
    • les bibliothèques de développement,
    • le compilateur (ou pré-compilateur)
    • divers outils

En savoir plus

App

Recent Tweets

Catégories