Support

Forums

Contact Me

Posts Tagged 'apache'

Apache

Apache (; ) is the collective term for several culturally related groups of Native Americans in the United States originally from the Southwest United States. [http://en.wikipedia.org/wiki/Apache]

Future review of Joomla!® 1.5 Development Cookbook and Build and Manage Applications with Maven, Continuum, and Archiva

apache_maven

Packt publishing has offered me to make a review of two of their new books (Thanks to them). I should receive free samples for review beginning of next week. Since it is two of my favorite subjects (Maven and Joomla!® ), I think it may also interest you. A review will follow in some days.

ApacheMaven2EffectiveImplementation  

Build and Manage Applications with Maven, Continuum, and Archiva

  • Install Apache Maven and follow the sample application to build up your project as quickly as possible
  • Test your applications to ensure maximum stability using Maven's inbuilt tools
  • Use Maven's report and checking tools to ensure the health of your projects
  • Explore Apache Continuum which will help you to ensure the health of your source code
  • Improve your team builds with the powerful combination of Maven, Archiva and Continuum
  • Install and run the repository manager Apache Archiva
  •  

 

Joomla!1.5DevelopmentCookbook

Joomla!® 1.5 Development Cookbook 

  • Make your extensions extensible, add extensions points to allow third parties to customize your extension
  • Create international extensions by enabling multilingual capabilities
  • Build more than just HTML pages - create PDF documents, Atom Feeds, and more!
  • Improve the user experience by adding Ajax
  • Create Atom and RSS feeds to keep users up-to-date
  • Utilize the power of Subversion to maintain your source code
  • Execute database queries and handle returned data in order to access and modify your data
  • Dynamically extend your database tables using JParameter to make your extensions more flexible
  • Keep your gremlins at bay by handling errors the Joomla! way
  • Work with the file system, interrogate existing files and folders and store data in the file system
  • Take control of your workflows by using www.JoomlaCode.org to manage your Joomla! projects

Easily Compress Web Application Resources with EhCache

Resources such as JavaScript and CSS files can be compressed before being sent to the browser, improving network efficiencies and application load time in certain case. If you are not using Apache with mod_deflate or nginx in front of your web application, you may need to implement resources compression yourself….

Wait! don’t start writing your own filter to compress files like CSS, html, txt, javascript it is way more difficult than you think to properly handle http response headers and do proper handling of mime type and caching. In one sentence don’t start reinventing the wheel: use ehcache for example.

Ehcache is an open source, standards-based cache used to boost performance, offload the database and simplify scalability. Ehcache is robust, proven and full-featured and this has made it the most widely-used Java-based cache. It can scale from in-process with one or more nodes through to a mixed in-process/out-of-process configuration with terabyte-sized caches. For applications needing a coherent distributed cache, Ehcache uses the open source Terracotta Sever Array.

Read more: Easily Compress Web Application Resources with EhCache

HowTo Call conditionnaly another task

Call task1, if the variable contains 'true', 'on', or '1' the task 'send a sms alert' is executed

 



Articles tagged

Ebay architecture scalability

At SD Forum 2006, Randy Shoup and Dan Pritchett, both with eBay, gave a presentation on eBay's architecture. Pritchett subsequently posted his presentation slides in his blog, The eBay Architecture.
Predictably, the presentation contained a few inspiring statistics, such as:
  • 15,000 application instances running in eight data centers
  • 212,000,000 registered users
  • 1 billion page views per day
  • 26 billion SQL queries and updates per day
  • Over 2 petabytes of data
  • $1,590 worth of goods traded per second
  • Over 1 billion photos
  • 7 languages
  • 99.94% uptime

Other stats in the presentation related to development process and features, such as:

  • Over 300 new features released each quarter
  • Over 100,000 lines of code released every two weeks

  • "According to the presentation, the goal of eBay's current architecture is to handle an additional ten-fold increase in traffic, something eBay expects to reach within a few short years. Another architecture objective is to be able to handle peak loads, and for components to gracefully degrade under unusual load or in the case of system failures." read more  HERE

     

    XAMPP 1.8.0 Xdebug stop working and make segmentation fault

    There's a new version of Xdebug released which fixes a major bug where inspecting static properties caused Xdebug to crash in XAMPP 1.8.0.

    Unfortunately, you’ll need to update manually the version of Xdebug shipped with XAMPP to Xdebug 2.2.1 rather than 2.2.0:

    Simply download the correct Xdebug binary (VC9 threadsafe PHP 5.4 VC9 TS (64 bit) (MD5: 81cacc87168c99c7f65ba202dc12c4b2)) and copy it in your XAMPP installation at xampp\php\ext\php_xdebug.dll

    restart Apache and you can continue debugging!

    Tomcat 7 and Apache Maven

    Here is 3 different way to control the lifetime a local Tomcat 7 container using Apache Maven. A typical scenario would be to start a servlet container prior to running integration tests (Selenium, SAHI or using any other framework you can think of )

    With the following examples, you will be able to start an instance of Tomcat 7 running your web application in the pre-integration-test phase and stop the instance in the post-integration-test phase. You can also decide to use an embedded container like Jetty instead.

    Read more: Tomcat 7 and Apache Maven

    Apache POI Speed Optimizations

    apache-poi-logo The Apache POI Project's mission is to create and maintain Java APIs for manipulating various file formats based upon the Office Open XML standards (OOXML) and Microsoft's OLE 2 Compound Document format (OLE2). In short, you can read and write MS Excel files using Java. In addition, you can read and write MS Word and MS PowerPoint files using Java. Apache POI is your Java Excel solution (for Excel 97-2008). We have a complete API for porting other OOXML and OLE2 formats and welcome others to participate.

    Switch Off logging

    From the documentation at http://poi.apache.org/utils/logging.html

    Logging in POI is used only as a debugging mechanism, not a normal runtime logging system. Logging is ONLY for autopsie type debugging, and should NEVER be enabled on a production system. Enabling logging will reduce performance by at least a factor of 100. If you are not developing POI or trying to debug why POI isn't reading a file correctly, then DO NOT enable logging. You've been warned.

    In order to effectively disable the logging functionality in Apache POI you must use an alternative logger. This is accomplished by providing a property to the POILogFactory to override the default logger. You can add one of these –D to your JVM settings

    -Dorg.apache.poi.util.POILogger=org.apache.poi.util.NullLogger
    -Dorg.apache.poi.util.POILogger=org.apache.commons.logging.impl.NoOpLog

    I found Apache POI to slightly better perform with the NoOpLog of apache common!

    Recompile poi with more adapted settings

    You can create a custom build of Apache POI 3.8 and alter the following properties to better match the size of the excel files you are generating or reading:

  • org.apache.poi.hssf.usermodel.HSSFRow#INITIAL_CAPACITY=5;
  • org.apache.poi.hssf.usermodel.HSSFSheet#INITIAL_CAPACITY= 20;    // used for compile-time optimization.  This is the initial size for the collection of rows.  It is currently set to 20.  If you generate larger sheets you may benefit by setting this to a higher number and recompiling a custom edition of HSSFSheet.
  • org.apache.poi.hssf.usermodel.HSSFWorkbook#INITIAL_CAPACITY=3;  // used for compile-time performance/memory optimization.  This determines the  initial capacity for the sheet collection.  Its currently set to 3.Changing it in this release will decrease performance since you're never allowed to have more or less than three sheets!     
  • http://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFWorkbook.html#INITIAL_CAPACITY

    Don’t use xlsx, prefer xls!

    This will only work if you do not reach xls limitations which may avoid you to go to that extreme solution. XLS is not compressed (XLSX is xml based and compressed) and your workbook may double size in memory as a result!

    For example, data beyond 256 (IV) columns by 65,536 rows will not be saved in xls! In Excel 2010 and Excel 2007, the worksheet size is 16,384 columns by 1,048,576 rows, but the worksheet size of Excel 97-2003 is only 256 columns by 65,536 rows. Data in cells outside of this column and row limit is lost in Excel 97-2003. But there is a lot more limitations listed at office.com

    The biggest side effect was that my excel file went from 354kb to 967kb, but the speed increase was quite interesting: more than 44% less evaluation time.

    Small localized optimization

    I don’t think these bring a lot of speed, JIT should optimize this bad piece of code for us but it is always worth trying Speeding up org.apache.poi.hssf.usermodel.HSSFRow.compareTo() and http://affy.blogspot.ch/2004/04/poi-optimization-speeding-_108265938673224937.html

    HowTo load a properties file for parametrizing scripts

    A properties file in c:/conf#A commentstmp.path=c:\tempftp.login.default=cedricwalterftp.pwd.default=xxxxftp.host=ftp.adress.comftp.port=21
    
    
    
    
    
    

    Harmony: a new apache project in incubator

    The Apache  software fundation has put a new project in it's incubator line: Harmony

    A free open source Java virtual machine and classes librairies!!!

    Right now it is only a thread, and a FAQ...an interesting discussion has start on Slashdot.org  

    Purpose of this project is to create and use an open source, compatible implementation of J2SE
    5, the latest version of the Java 2 Standard Edition specification.

    "The Apache Software Foundation provides support for the Apache community of open-source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users."

    Update: Sun executives have endorsed the project, and the company might even participate. found at www.informationweek.com

    Use JUNIT for

    Use JUNIT for

    • Designing/defining function.
    • Documentation: act like a sort of cookbook
    • Regression testing
    • You find a bug and correct it? write a JUNIT testcase! white paper available in download section

    Donations

    Thank You for supporting my work