construindo uma intranet corporativa utilizando plone
DESCRIPTION
Developing a Corporative Intranet with Plone. By Mauro Lemes da Silva Challenges, problems and strategies to create an Intranet with large access with over 100,000 users. Learn how Nginx, Varnish, Pound and Memcached were crucial to our success.TRANSCRIPT
Developing a Corporative Intranet with Plone
Novembro/2010
AAbout mebout me
Mauro Lemes da SilvaMauro Lemes da Silva
Brasília, BrazilBrasília, Brazil
Intranet Project ManagerIntranet Project Manager
AAgendagenda
The BankThe Bank
Why PloneWhy Plone
Our Intranet Our Intranet
Problems faced and solutions foundProblems faced and solutions found
ArchitectureArchitecture
Commercial, social developmentand savings Brazilian bank
52 Million clients
82 Thousandemployees
34.7% Market share savings
5.564Present in all Brazilianmunicipalities
37,048Service units
149 Years old
Source: CAIXA/VICOT- 08/2010
CCAIXA is also working in the USA, Japan and Venezuela
JAPANHamamatsu
USAJersey City
VENEZUELACaracas
CCAIXA's Tech transactions changes daillyAIXA's Tech transactions changes daillywith highest results shown herewith highest results shown here
With over 27 millionMonthly Internet Banking
Transactions
With over 89 millionMonthly Teller Machine
Transactions
With over 335 millionMonthly Tansaction
Partner Units
CCAIXA's Tech EnvironmentAIXA's Tech Environment3 Technology Data Center;1 Certificate Authority Site;532 Corporative Systems;8 Mainframes 142 Sun Based Servers – 722 processors;7.468 X86 Based Servers;300 TB Storage – Hard disk;1.164 TB Storage – tapes;93.607 Workstations;17.151 Embedded computers;20.743 Automated Teller Machine;2.455 Branch;
CCaixa's Intranet's monthly participationaixa's Intranet's monthly participation
• The use of Plone Software under the Local Brazil Government is currently growing:
• Intra Governmental Discussion Group
• Various others institutions in the Brazilian Government use Plone
- More than 30
PPlone use in Brazil Governmentlone use in Brazil Government
CCaixa's previous Intranetaixa's previous IntranetProblems have been solved Problems have been solved with our current continuous with our current continuous
updatingupdating
• No pattern;
• No governance;
• No database integration;
• Simple demands usually took several weeks
to be implemented.
PPreviouslly Caixa's Intranetreviouslly Caixa's Intranet
WWhy Plone?hy Plone?
WWhy Plone?hy Plone?
• Free software;• Robust;• Secure;• Great productivity;• Buying similar proprietary software licence is very expensive
HHow much do you think Caixa has savedow much do you think Caixa has saveduntil this year by using free software?until this year by using free software?
✔ 20 million dollars?20 million dollars? ✔ 30 million dollars?30 million dollars?
✔ More than 40 million dollars?More than 40 million dollars?
If you guessIf you guessed 40 million dollars, you're right!ed 40 million dollars, you're right!
That's what makes Caixa, the leading South AmericanThat's what makes Caixa, the leading South AmericanBank, effective and competitive, in the world ofBank, effective and competitive, in the world ofBanking, business, lottery and personal finance.Banking, business, lottery and personal finance.
That's making money by saving itThat's making money by saving it ! !
HHow much do you think Caixa has savedow much do you think Caixa has saveduntil this year by using free software?until this year by using free software?
TThe Solutionhe Solution
TThe Solutionhe Solution
• Intranet redesign;
• To adopt the Corporative Portal concept;
Now, let me present how the Intranet pages looks.
It looks like this:
CCaixa's Intranet Architectureaixa's Intranet Architecture
AActual Architecture ctual Architecture
FFuture Architecture uture Architecture
Varnish
Varnish is an HTTP accelerator designed for content-heavy dynamic web sites. In contrast to other HTTP accelerators, many of which began life as client-side proxies or origin servers,
Used on our intranet for static content cache. Delivers 80% from our users access.
NginxIt's a lightweight, high-performance Web server/reverse proxy and e-mail (IMAP/POP3)
Used on our intranet for:• Layout images• CSS• Javascript• Flash files• FLV streaming • gzip compression
Pound
Pound is a lightweight open source reverse proxy program suitable to be used as a web server load balancing solution.Developed by an IT security company, it has a strong emphasis on security.
Used on our intranet for stick session balancer.
MemcachedIt's a general-purpose distributed memory caching system. It is often used to speed up dynamic database-driven websites by caching data and objects in RAM to reduce the number of times an external data source
Used on our intranet for caching the most used methods or that ones that have a slowly processing
PProblems facedroblems facedAAndnd
SSolutions foundolutions found
PProblems faced and solutions foundroblems faced and solutions found
• Local cache using web browser;• Autenticated Users;
AAutenticated usersutenticated users
Solution• Use a Dedicated Server
LLocal cacheocal cache
Solution• Varnish implementation.
The images are stored on a server using a domaincreated specially for this task
Details are everything
The "how" details are ...
• To use Zope Component Architecture(ZCA) for developing applications
• To use memcached
• By using the egg format
• To use AJAX
• To optimize the code for making the page size smaller
And more, "how" details are ...
• To compress javascript and CSS codes
• To use gzip to compress the page
• To study content and application by creating a large cache identification policy
• Cache policy is alive
• To use Varnish as Cache accelerator
First Stress Test
• Using Squid Cache Server
• A simple apache benchmark test (with anonimous user), with, 100 thousand accesses and 3 thousand concurrency
• Which results are, 500 requests per second, that's good
Second Stress Test
• Using Varnish Cache Server
• A simple apache benchmark test (with anonimous user), with, 100 thousand accesses and 3 thousand concurrency
• Which results are, 9800 requests per second, that's pretty good.
• This is the “why” reason to use Varnish
What does the setup look like?
• Nginx (layout images, video streaming and access logging)
• Varnish (Caching content)
• Pound (Load balancer)
• Zeo Clients & memcached
• Zeo Server
Gracias!Obrigado!
Thank you!