EcoConception Logicielle
9.0K views | +0 today
EcoConception Logicielle
Green IT, performance web, économies d'énergies, bref : éco-conception logicielle !
Curated by Mickael Ruau
Your new post is loading...
Your new post is loading...

Popular Tags

Scooped by Mickael Ruau
October 18, 2013 7:11 PM
Scoop.it!

Windows memory manager internals

Windows Memory/Cache Manager Internals Sisimon Soman
No comment yet.
Scooped by Mickael Ruau
October 18, 2013 7:04 PM
Scoop.it!

What every-programmer-should-know-about-memory

What Every Programmer Should Know About Memory Ulrich Drepper
No comment yet.
Scooped by Mickael Ruau
October 18, 2013 6:57 PM
Scoop.it!

Monitoring and Detecting Memory Leaks in Your Java Application | Javalobby

Monitoring and Detecting Memory Leaks in Your Java Application | Javalobby | EcoConception Logicielle | Scoop.it

So your application is running out of memory, you’re spending days and nights analyzing your application hoping to catch the memory holes in your objects. This article will explain how to monitor and detect your memory leaks to make sure your app is on the safe side.

 
Mickael Ruau's insight:

If you suspect that there is a memory leak, a convenient way to make sure it’s really there is using JConsole. You can locally or remotely connect JConsole to your app and let it monitor for a while (an hour, half a day, overnight, or even a week).

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 6:56 PM
Scoop.it!

Java Memory Leak | Javalobby

Java Memory Leak | Javalobby | EcoConception Logicielle | Scoop.it

Java has a garbage collector and therefore there is no such thing as a memory leak.

WRONG.

This is wrong on many different levels. Although it is true that there is a garbage collector (GC) that collects memory chunks that are not used anymore, this is still not the philosopher's stone. GC offloads a huge amount of error-prone jobs from the programmer's shoulders, but does not solve every problem related to memory allocation. To make things a bit worse, there are constructs in the Java environment that may “trick” the GC into keeping some allocated memory as allocated even though our program is not using it anymore. After 20 years of programming of C and 7 years of Java (some overlapping) I can state that Java is far better in this aspect than C or C++. Still there is some room for improvement. Until those improvements become a reality, programmers better know the nuts and bolts of memory handling and the usual pitfalls so as not to fall into the traps. But first thing first.

 
Mickael Ruau's insight:

There are numerous examples of possible memory leaks in Java. Even though they are a magnitude less frequent than they are in C, or C++, usually it is better to have a GC than not to.

 
No comment yet.
Scooped by Mickael Ruau
October 18, 2013 6:53 PM
Scoop.it!

Caching In: Understand, Measure and Use your CPU Cache More Effectively | Javalobby

Caching In: Understand, Measure and Use your CPU Cache More Effectively | Javalobby | EcoConception Logicielle | Scoop.it

 

 Modern computationally intensive tasks are rarely bottlenecked by the absolute performance of your processor cores. The real bottleneck in 2013 is getting data out of memory. CPU caches are designed to alleviate the difference in performance between CPU core clock speed and main memory clock speed, but developers rarely understand how this interaction works or how to measure or tune their application accordingly. This session aims to address this by:
Describing how CPU caches work in the latest Intel hardwareShowing what and how to measure in order to understand the caching behavior of softwareGiving examples of how this affects Java program performance and what can be done to address poor cache utilization
No comment yet.
Scooped by Mickael Ruau
October 18, 2013 6:45 PM
Scoop.it!

Top 10 Java Performance Problems

Top 10 Java Performance Problems | EcoConception Logicielle | Scoop.it

A New eBook from AppDynamics

As Java applications become more distributed and complex, finding and diagnosing performance issues becomes harder and harder. The good news is, these performance issues can usually be attributed to only a handful of root causes. In this eBook, Steve Haines talks about how to troubleshoot and diagnose some of the most common performance issues in Java today.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 6:28 PM
Scoop.it!

Memcached Memory Allocation | Javalobby

Memcached Memory Allocation | Javalobby | EcoConception Logicielle | Scoop.it

Many developers use Memcached for their projects, but only a few of them know exactly how this caching solution works. Let’s dive into the world of Memcached to learn more about its memory allocation and how to prevent fragmented memory for your Java and PHP applications.

 
Mickael Ruau's insight:

Thanks to this easy and straightforward optimization we can improve the usage of the allocated memory.

It can be very useful to take a deeper look into different systems. As you can see, they are much more complex than we can imagine. They consist of a number of methods, which can help to solve a variety of problems. Knowledge and understanding of the basics of each technology will help you in your development.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 4:46 PM
Scoop.it!

Closure Tools — Google Developers

The Closure Compiler is a tool for making JavaScript download and run faster. It is a true compiler for JavaScript. Instead of compiling from a source language to machine code, it compiles from JavaScript to better JavaScript. It parses your JavaScript, analyzes it, removes dead code and rewrites and minimizes what's left. It also checks syntax, variable references, and types, and warns about common JavaScript pitfalls.

 
Mickael Ruau's insight:
How can I use the Closure Compiler?

You can use the Closure Compiler as:

An open source Java application that you can run from the command line.A simple web application.A RESTful API.

To get started with the compiler, see "How do I start" to the right.

What are the benefits of using Closure Compiler?

Efficiency. The Closure Compiler reduces the size of your JavaScript files and makes them more efficient, helping your application to load faster and reducing your bandwidth needs.

Code checking. The Closure Compiler provides warnings for illegal JavaScript and warnings for potentially dangerous operations, helping you to produce JavaScript that is less buggy and easier to maintain.

 
No comment yet.
Scooped by Mickael Ruau
October 18, 2013 1:10 PM
Scoop.it!

Une nouvelle métrique pour une gestion responsable des déchets IT ?

Une nouvelle métrique pour une gestion responsable des déchets IT ? | EcoConception Logicielle | Scoop.it
Proposé par The Green Grid, l’indicateur EDE pour gérer ses déchets d’équipements électriques et électroniques de façon responsable s’adresse surtout aux États-Unis, l’Europe ayant depuis longtemps légiféré sur le sujet.
No comment yet.
Scooped by Mickael Ruau
October 18, 2013 1:01 PM
Scoop.it!

Écologie informatique : mythe ou réalité ?

Écologie informatique : mythe ou réalité ? | EcoConception Logicielle | Scoop.it
Soucieux du développement durable, les Français seraient prêts, selon une récente étude Ipsos, à réparer ou "booster" leur ordinateur plutôt que de le remplacer. Mais quand l’obsolescence est programmée, les bonnes intentions sont-elles suffisantes ?
Mickael Ruau's insight:

Réalisée par Ispos pour Crucial.fr, filiale de l'un des plus grands fabricants mondiaux de mémoire, Micron Technology, une étude révèle que 86 % des Français pensent qu'il est préférable pour l'environnement de réparer un ordinateur ou de lui ajouter de la mémoire plutôt que de le remplacer. Plus de la moitié d'entre eux (66 %) seraient même prêts à repousser un achat si leur matériel existant pouvait être rendu plus performant. Une intention sans aucun doute louable mais peu réaliste sur un marché où de nombreux facteurs se conjuguent en faveur d'une obsolescence programmée.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 12:58 PM
Scoop.it!

Impressions : 26 pages par jour et par salarié

Impressions : 26 pages par jour et par salarié | EcoConception Logicielle | Scoop.it
Pour la première fois depuis des décennies, le nombre de pages imprimées par les entreprises baisse au niveau mondial. Essentiellement grâce aux projets de consolidation des pays développés.
Mickael Ruau's insight:

L’impression constitue un coût non négligeable, compris entre 1 et 3 % du chiffre d’affaires, soit en moyenne 300 à 1 200 euros par an et par utilisateur. Or, "on peut facilement réduire les volumes d'impressions de l'ordre de 30 %" rappelle Jean-Pierre Fourreau, fondateur de Print&CO2, une société de conseil spécialisée dans la réduction de l'empreinte économique et écologique des impressions. Une aubaine en temps de crise. Par ailleurs, les impressions peuvent représenter jusqu’à un tiers du bilan carbone du système d’information. De plus en plus de DSI font donc d’une pierre deux coups : en réduisant les impressions, elles libèrent une partie du budget tout en préservant la planète.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 9:48 AM
Scoop.it!

Table de décision - Wikipédia

Table de décision

Une table de décision est un outil logique permettant de modéliser facilement un ensemble de choix d'une certaine complexité. Au lieu d'obtenir une série de conditions imbriquées par une succession de SI..., ALORS..., SINON..., il est possible de créer une table les contenant. Ce type de table est particulièrement utile en programmation informatique.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 2:44 AM
Scoop.it!

Legends of Code 2

Legends of Code 2 | EcoConception Logicielle | Scoop.it
Legends of code est un concours de programmation à destination des étudiants en dernière année d’école d’ingénieur ou d'université.
Cette seconde édition est organisée par D2SI en collaboration avec GreenIT.fr et CodinGame...
No comment yet.
Scooped by Mickael Ruau
October 18, 2013 7:06 PM
Scoop.it!

Common Application Problems and How to Fix Them: The Select N + 1 Problem | Javalobby

Common Application Problems and How to Fix Them: The Select N + 1 Problem | Javalobby | EcoConception Logicielle | Scoop.it

The N + 1 problem is a performance anti-pattern in which an application makes N + 1 database calls (where N is the number of objects fetched). Like most anti-patterns, this isn’t necessarily a problem in itself, but under certain circumstances (where N is large, for example) it will cause performance to degrade by making hundreds or even thousands of database calls for a single business transaction.

In plain English: You’re spamming your database with really small, fast queries instead of using one or two more complex ones.

Mickael Ruau's insight:

This problem happens most often when you’re using a persistence engine or an object/relational mapper (ORM) like Hibernate and you’re using lazy loading. Be sure to understand the defaults for any object-relational mapper before you begin using them.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 7:01 PM
Scoop.it!

Most efficient way to increment a Map value in Java — Only search the key once | Guru

Most efficient way to increment a Map value in Java — Only search the key once | Guru | EcoConception Logicielle | Scoop.it

This question may be considered too basic, but is frequently asked in the forums. In this post, I will discuss one way that only searches the key in Map ONCE.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 6:57 PM
Scoop.it!

Optimize Late and Not Often | Javalobby

Optimize Late and Not Often | Javalobby | EcoConception Logicielle | Scoop.it

Many software engineers, myself included, are driven to build the best software possible, pouring their creative juices into developing “the perfect” solution. This intention is admirable and it is this quality that can lead to extremely innovative applications. However, I believe it is also this perfectionist quality that can sometimes cause us to lose sight of the bigger picture, our highest priorities.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 6:54 PM
Scoop.it!

Performance of Java Collections | Javalobby

Performance of Java Collections | Javalobby | EcoConception Logicielle | Scoop.it

I’m in the midst of teaching an Introduction to Java class. Like most courses of this type, when I introduce the standard JVM collections I intend to provide guidance on which type of collection to use when.

I wanted to show the real-world effects of making the correct or incorrect decision, so I put together an example.

Mickael Ruau's insight:

One other interesting point is the relative performance of array lists versus linked lists when fetching a specific element with a known location. Most people suggest linked lists as the number of elements grows large, and that’s good advice where there will be inserts and deletes that are not at the end. But if the primary use case will be adding things, fetching them, and iterating over them, a large array list may still be noticeably better.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 6:46 PM
Scoop.it!

Cache: It Ain't Just Remembering Stuff | Javalobby

Cache: It Ain't Just Remembering Stuff | Javalobby | EcoConception Logicielle | Scoop.it

And I am pretty sure that a lot of you will be able to find a lot of additional issues that I’ve not thought about.

But there are at least three major issues in the code above. It doesn’t do anything to solve the missing value problem, it doesn’t have good handling for expiring values and have no way to handle changing values.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 6:32 PM
Scoop.it!

Bad Java Servlet Apps | Javalobby

Bad Java Servlet Apps | Javalobby | EcoConception Logicielle | Scoop.it

Here’s a recipe for making really bad Java server apps. Perhaps ones that verge on unmaintainable as the years pass. Patterns and practices have evolved over 18 years of enterprise Java. Every now and then, there is something that developers declare is the promised land, and a lot of intellectual effort is spent on it. Sometimes frameworks emerge. Maybe just “best practices”. When we look back years later, we cringe. I’m going to enumerate bad decomposition, dependency management, and state tracking techniques (and technologies).

Mickael Ruau's insight:

 

These are wrong because they:

are inordinately hard to understand if you did not write it yourselfhard to debughard to unit testincrease entanglement

Team agreement that these are wrong means:

2x, 4x or 8x more expensive functional changes.progressive team de-skilling as the talented vote with their feetmounting executive dissatisfaction

Choose more than one for really really bad applications:

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 4:48 PM
Scoop.it!

Getting Started with the UI - Closure Tools — Google Developers

Getting Started with the UI - Closure Tools — Google Developers | EcoConception Logicielle | Scoop.it

The easiest way to get familiar with the Closure Compiler service is by optimizing a few simple functions in the service's web UI.

Access the Closure Compiler UI by opening this page in another tab or window: http://closure-compiler.appspot.com.

You should see the Closure Compiler UI prepopulated with a simple Hello World function:

 
Mickael Ruau's insight:

La version en ligne de Closure Compiler.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 1:52 PM
Scoop.it!

Algorithme de Rete - Wikipédia

Algorithme de Rete

L' algorithme de Rete est un algorithme performant de filtrage par motif (" pattern matching ") intervenant dans l'implémentation de systèmes de règles de production. L'algorithme a été conçu par le Dr Charles L. Forgy de l' Université Carnegie-Mellon, tout d'abord publié comme une note de travail en 1974, puis plus tard élaboré dans sa thèse PhD de 1979 et dans une publication de 1982.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 1:06 PM
Scoop.it!

Green IT : l'offre de services s'organise

Green IT : l'offre de services s'organise | EcoConception Logicielle | Scoop.it
Formation, audit, accompagnement, mise en œuvre : de plus en plus de prestataires "verts" aident les DSI à faire des économies tout en respectant l'environnement. Panorama des premières offres françaises.
No comment yet.
Scooped by Mickael Ruau
October 18, 2013 12:58 PM
Scoop.it!

Green IT : quelles économies espérer ?

Green IT : quelles économies espérer ? | EcoConception Logicielle | Scoop.it
Après plusieurs années de buzz marketing, le Green IT arrive à maturité. En plus de réduire l’empreinte écologique du système d’information, les premiers retours d’expérience laissent présager d’importantes économies.
Mickael Ruau's insight:

A force d'aborder uniquement la dimension environnementale des projets Green IT, on en viendrait presque à oublier la dimension économique du développement durable. Or, "sans économies financières tangibles, un projet Green IT n'a aucune chance d'exister" rappelle Gwenaëlle Courbe, co-fondatrice de Blueight, société spécialisée dans l'audit énergétique des systèmes d'information. « De la réduction des volumes d'impression, en passant par la mise en veille des postes de travail, les achats responsables et l'amélioration de l'efficience énergétique du data center le potentiel d'économies et le retour sur investissement sont aujourd'hui connus » explique-t-elle.

No comment yet.
Scooped by Mickael Ruau
October 18, 2013 12:49 PM
Scoop.it!

Sorting Networks using Higher-Order Functions of JavaScript Array

Sorting Networks using Higher-Order Functions of JavaScript Array | EcoConception Logicielle | Scoop.it
An implementation of a sorting algorithm usually uses
one or more iterating loops in the form of a for/while statement.
No comment yet.
Scooped by Mickael Ruau
October 18, 2013 6:21 AM
Scoop.it!

PHP Image Compression & Caching: Optimisez vos images en PHP

PHP Image Compression & Caching: Optimisez vos images en PHP | EcoConception Logicielle | Scoop.it
PHP Image Compression & Caching est une bibliothèque PHP permettant d'améliorer vos webperfs en compressant et cachant les images de vos pages HTML.
No comment yet.