Skip to content

Portal

You are here: Home » Blogs » Plone Conference 2005 » Vienna Plone Conference 2005 BLOG » Archive » 2005 » September » 19 » casestudy

casestudy

Berne Case Study Pascal Habegger Thomas Goetschi

www.bern.ch

The Fellowship of RINGE

Customer:

* City of Berne, capital of Swtzerland

The existing site was no cms

The deadline for the project was january 2005


Project organisation

The project was long and exhausting but a success :-)

evaluation
prototyping
content gathering

Only open source cms would be suitable to the needs:

* Licence fees are too expensive

* You can develop pretty fast (time)

* Testing is importand and easy

* its a 'lucky strike'

The prototype was successfull

applicatuion development is pretty easy and straight forward

[Thomas finishes now, pascal takes over]



Implementation

100% OSS solution

Squid
Apache2
awstats
nagios (monitoring)
zope/zeo/plone
RedHat Linux

DesktopPublishing: bernArticle

Staging: BernSync

Garbage Collection: BernAbfall

low compilation BernSSSB


there is a live server and a staging server for reviewers and authors there is a pushing mechanism to move the content to the live site. nobody can harm the lice site, onle the staging site is edited.

load balancing, caching

three zeo clients are talking with squid and serving, there is one more zope instance for administrations. the administrative client does bypass squid.

ZSyncer was enhanced, AT based synchronisation was programmed, there was a performancce gain :-)

You transmit the schema and keys and fieldnames. Changes are done in the life site by moving the values.

Workflow: A state called 'revision' was integrated. A transition revise would put an object into that new state. The new stage is needed to handle synchronisation.

Bern Article is shown

[There is a problem with the microphone, the sound went off, a new one is brought on the stage ;-)]

Ber Article has predefined styles / templates. There are Blocks containing an image or graphical element and text. Image sizes are predefined and this provides a stable layout while giving users enough freedom when they edit.

For each Block there are about 12 layout templates to choose from.

600'000 hits a day
35-50GB traffic per month

[...Thomas takes the (working) microphone again...]

Lessons learned

* IE SP1 made trouble with logins

* Epoz vs Kupu (Kupu was too new at that time)

* IE made hyperlinks absolute, or corrupted them.

* Consistence of hyperlinks versus performance (broken links)

* Linux and the hardware caused i/o waits causing performance leaks.

* time pressure was enormous

* specification changed: there was one machine for handling live data and staging content, later there was the decision ot take two machines.

* decicion making was not easy there were many 'cooks' to spoil the soup.

* consultants did not 'Think in plone'

But still the coice to take plone / zope was right:

* Functionality

* Scalability

* Undo function

* Easy user interface

* growing and improvin every day...

[...Pascal again...]

4teamwork and the it team of the city of bern co-operated. 4teamwork taught them plone and it worked out.

Conclusion and Outlook

* It was challenging and rewarding at the same time

[...Thomas again...]

* Intranet is going to CMS, too

* e-government functionality is approached

Questions:

Q: How big is the ZODB?
A: Packed 6-7GB unpacked

Q: Are all objects in the ZODB?
A: Yes.

Q: Migration to Plone 2.1
A: Depending on the funding. Migration is not a need for the customer, probably next year.

Q: Marshalling
A: Two versions, live and editing. Transitions are triggering copy operations. Workflow history shows who modified what object. Authors and reviewers can not log in at the live site.

Q: Editors, are there external editors:
A: No, the proxy would not allow for that. Epoz is used. With Bern Article you need to edit a block at a time.

Q: Administration, Archive, Versioning
A: It is not adressed to keep every version of the object.

Q: Staging to live:
A: Copy keys and fields and values to the remote objects if it is already existant. Pickled Objects are recursive. Subobjects need to be retransmitted with ZSyncer.

Q: Caching. Was Apache cache evaluated, why squid?
A: Other companies used squid and have been successfull.

[...Thomas sais thank you to all zope and plone developers...]
So long and thank you for all the FISH (where FISH means: Fine Intelligent Sourcecode Handicraft)

Posted by gogo on 2005-09-19 12:04

Trackback

The URI to TrackBack this entry is: http://gogo.bluedynamics.net/plone/blogs/pc2005/blog/archive/2005/09/19/casestudy/trackback

Thanks

Posted by blogger at 2005-09-21 14:30
Thanks for blogging & all the best - well done!
Thomas Goetschi
 

Personal tools