construindo uma intranet corporativa utilizando plone

48
Developing a Corporative Intranet with Plone Novembro/2010

Upload: menttes

Post on 13-May-2015

1.313 views

Category:

Technology


0 download

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

Page 1: Construindo uma Intranet Corporativa utilizando Plone

Developing a Corporative Intranet with Plone

Novembro/2010

Page 2: Construindo uma Intranet Corporativa utilizando Plone

AAbout mebout me

Mauro Lemes da SilvaMauro Lemes da Silva

Brasília, BrazilBrasília, Brazil

Intranet Project ManagerIntranet Project Manager

Page 3: Construindo uma Intranet Corporativa utilizando Plone

AAgendagenda

The BankThe Bank

Why PloneWhy Plone

Our Intranet Our Intranet

Problems faced and solutions foundProblems faced and solutions found

ArchitectureArchitecture

Page 4: Construindo uma Intranet Corporativa utilizando Plone

Commercial, social developmentand savings Brazilian bank

Page 5: Construindo uma Intranet Corporativa utilizando Plone

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

Page 6: Construindo uma Intranet Corporativa utilizando Plone

CCAIXA is also working in the USA, Japan and Venezuela

JAPANHamamatsu

USAJersey City

VENEZUELACaracas

Page 7: Construindo uma Intranet Corporativa utilizando Plone

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

Page 8: Construindo uma Intranet Corporativa utilizando Plone

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;

Page 9: Construindo uma Intranet Corporativa utilizando Plone

CCaixa's Intranet's monthly participationaixa's Intranet's monthly participation

Page 10: Construindo uma Intranet Corporativa utilizando Plone

• 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

Page 11: Construindo uma Intranet Corporativa utilizando Plone

CCaixa's previous Intranetaixa's previous IntranetProblems have been solved Problems have been solved with our current continuous with our current continuous

updatingupdating

Page 12: Construindo uma Intranet Corporativa utilizando Plone

• No pattern;

• No governance;

• No database integration;

• Simple demands usually took several weeks

to be implemented.

PPreviouslly Caixa's Intranetreviouslly Caixa's Intranet

Page 13: Construindo uma Intranet Corporativa utilizando Plone

WWhy Plone?hy Plone?

Page 14: Construindo uma Intranet Corporativa utilizando Plone

WWhy Plone?hy Plone?

• Free software;• Robust;• Secure;• Great productivity;• Buying similar proprietary software licence is very expensive

Page 15: Construindo uma Intranet Corporativa utilizando Plone

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?

Page 16: Construindo uma Intranet Corporativa utilizando Plone

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?

Page 17: Construindo uma Intranet Corporativa utilizando Plone

TThe Solutionhe Solution

Page 18: Construindo uma Intranet Corporativa utilizando Plone

TThe Solutionhe Solution

• Intranet redesign;

• To adopt the Corporative Portal concept;

Page 19: Construindo uma Intranet Corporativa utilizando Plone

Now, let me present how the Intranet pages looks.

It looks like this:

Page 20: Construindo uma Intranet Corporativa utilizando Plone
Page 21: Construindo uma Intranet Corporativa utilizando Plone
Page 22: Construindo uma Intranet Corporativa utilizando Plone
Page 23: Construindo uma Intranet Corporativa utilizando Plone
Page 24: Construindo uma Intranet Corporativa utilizando Plone
Page 25: Construindo uma Intranet Corporativa utilizando Plone
Page 26: Construindo uma Intranet Corporativa utilizando Plone
Page 27: Construindo uma Intranet Corporativa utilizando Plone
Page 28: Construindo uma Intranet Corporativa utilizando Plone
Page 29: Construindo uma Intranet Corporativa utilizando Plone
Page 30: Construindo uma Intranet Corporativa utilizando Plone

CCaixa's Intranet Architectureaixa's Intranet Architecture

Page 31: Construindo uma Intranet Corporativa utilizando Plone

AActual Architecture ctual Architecture

Page 32: Construindo uma Intranet Corporativa utilizando Plone

FFuture Architecture uture Architecture

Page 33: Construindo uma Intranet Corporativa utilizando Plone

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.

Page 34: Construindo uma Intranet Corporativa utilizando Plone

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

Page 35: Construindo uma Intranet Corporativa utilizando Plone

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.

Page 36: Construindo uma Intranet Corporativa utilizando Plone

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

Page 37: Construindo uma Intranet Corporativa utilizando Plone

PProblems facedroblems facedAAndnd

SSolutions foundolutions found

Page 38: Construindo uma Intranet Corporativa utilizando Plone

PProblems faced and solutions foundroblems faced and solutions found

• Local cache using web browser;• Autenticated Users;

Page 39: Construindo uma Intranet Corporativa utilizando Plone

AAutenticated usersutenticated users

Solution• Use a Dedicated Server

Page 40: Construindo uma Intranet Corporativa utilizando Plone

LLocal cacheocal cache

Solution• Varnish implementation.

The images are stored on a server using a domaincreated specially for this task

Page 41: Construindo uma Intranet Corporativa utilizando Plone

Details are everything

Page 42: Construindo uma Intranet Corporativa utilizando Plone

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

Page 43: Construindo uma Intranet Corporativa utilizando Plone

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

Page 44: Construindo uma Intranet Corporativa utilizando Plone

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

Page 45: Construindo uma Intranet Corporativa utilizando Plone

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

Page 46: Construindo uma Intranet Corporativa utilizando Plone

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

Page 47: Construindo uma Intranet Corporativa utilizando Plone

Any Questions?

Mauro Lemes da Silva

[email protected]

Page 48: Construindo uma Intranet Corporativa utilizando Plone

Gracias!Obrigado!

Thank you!