1 / 27

Apache James

Apache James. The complete email application platform Danny Angus. What is James?. Modular An SMTP Server A POP3 Server An email application server An IMAP server An NNTP Server Mail Storage manager. What do you get?. Container. Distribution Embedding Modular Flexible Options.

guido
Download Presentation

Apache James

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Apache James The complete email application platform Danny Angus

  2. What is James? • Modular • An SMTP Server • A POP3 Server • An email application server • An IMAP server • An NNTP Server • Mail Storage manager Apache James - The complete email application platform

  3. What do you get? Apache James - The complete email application platform

  4. Container • Distribution • Embedding • Modular • Flexible • Options Apache James - The complete email application platform

  5. Server • Ready to use • Simple to configure • Flexible • Scaleable • High Uptimes Apache James - The complete email application platform

  6. SMTP • Handler Chain • Command handlers • Extend - ESMTP • Modify – R&D • Fast Fail – Don’t waste time on Spam • TLS • SMTP AUTH • Bind to IP Apache James - The complete email application platform

  7. Mailet • Email applications • JavaMail • Provided Mailets • Remote & local delivery • Mailing lists • AV/A-Spam • Gateway to other transports • And Loads More Apache James - The complete email application platform

  8. Persistence • Derby – by default • File • Mbox – for archives • Maildir • Dbfile • Rdbms syntax- • SQL Server • Oracle • Mysql • Postgres • DB2 • …and more… add your favourite. Apache James - The complete email application platform

  9. POP3 • Host v Vhost • TLS • Bind Apache James - The complete email application platform

  10. IMAP • At Last we’re getting there • Not bullet proof … yet • Module • TLS • Bind Apache James - The complete email application platform

  11. NNTP • Independent • Great for Workgroups • Auth • No mail->news  Apache James - The complete email application platform

  12. Fetch Mail • Blend Your Channels • Java Mail • IMAP • POP3 • Schedule • Fetched mail is 1st class citizen • Re-route mail from logical accounts to actual users or lists • Manage virtual domains Apache James - The complete email application platform

  13. What Else We Have • Mail related Sub projects • (What did you expect?) Apache James - The complete email application platform

  14. JSPF • 100% Java implementation of SPF • Passes the Open SPF Tests (openspf testsuite-2007.01) Apache James - The complete email application platform

  15. Mime4j • Mime Parser • Mime is complex due to its open-ended nature • Mime is powerful due to its open-ended nature • Multipart Mime is recursive • Independent of JavaMail • Performance Apache James - The complete email application platform

  16. JSieve • Sieve is a language that can be used to create filters for electronic mail. 100% Java Sieve implementation of RFC3028 Can be used to script James-Server. Apache James - The complete email application platform

  17. Postage • Soak/Stress test mainly for James • Provides comprehensive metrics and benchmarks. • Compare: • Configurations • Deployment strategies • Hardware/environments Apache James - The complete email application platform

  18. How can this all be used? • Easily • Quickly • To great effect • At low cost • (I would say that wouldn’t I) Apache James - The complete email application platform

  19. Stand Alone • Out of the box, set some parameters • All you need for straightforward email • It Works™ - yes it does! Apache James - The complete email application platform

  20. Distributed Use MX Priorities to manage high availability. 100% is possible. RDBMS for shared storage Responsibilities can be separated Apache James - The complete email application platform

  21. Performant • Scale Horizontally • Divide and Protect • Integrate with your business systems Throughput depends on message size Administration – James doesn’t provide tooling James Can be made Highly Available Apache James - The complete email application platform

  22. Integrated • Integrate • Use another container • JCA • OSGi • Spring • Geronimo Apache James - The complete email application platform

  23. Extended • Add • Replace • Enhance • Remove • Protocols • Storage types • Configuration • Mailets • SMTP commands Apache James - The complete email application platform

  24. Embeded • Use James modules • As much or as little as you want to • Extend everything • Reuse • Mailets • sieve scripts Apache James - The complete email application platform

  25. Embeded • Lower level • Use our API’s • Independent Modules • Just what you need • Test bed • Be radical! • Reuse • Be modular! Apache James - The complete email application platform

  26. What Next? • Mailet++ • 100% independent 100% useful • Annotations • JNDI • IMAP – the end in sight? • Alternative Distributions • Make your own! • JavaMail re-implement or re-write? Apache James - The complete email application platform

  27. Questions? Danny Angusdanny@apache.org http://james.apache.org http://blog.killerbees.co.uk Or Google for: Detroit Derby Girls Swim the Atlantic Ocean

More Related