Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Der Freitag: A Use Case  How we built a newspaper website     in Plone
About the speakers●   Gil Forcada●   Timo Stollenwerk●   Kees Hink
About Der Freitag●   Its a printed newspaper●   issued weekly●   on Thursday●   15.000 copies across Germany●   About 40 e...
Der Freitag Online●   freitag.de●   web-print integration●   numbers?    –   53k articles (31k editorial), 330 comments a ...
Agile Development●   Scrum●   Pivotal Tracker
Dexterity
Dexterity
Membership●   Login/Registration: z3c.form●   No membrane●   Dexterity member folder●   Sync between member profile and fo...
Front page●   Folderish structure●   “Link” objects that reference existing content●   Custom views●   Ability to override...
Comments●   plone.app.discussion●   Complex custom workflow●   Blaming / editing / deleting comments●   3 community modera...
Development●   Git    –   git merge --no-ff    –   git rebase -i    –   git pull -r●   Jenkins
Migration●   Numbers    –   30k articles    –   25k blog entries    –   20k members    –   350k comments●   Transmogrifier...
Performance Tests●   The Grinder●   In Jenkins●   Helped us identify performance issues (Diazo,    catalog)●   Warm-up scr...
Release●   Stacks of VMs●   A script to release
Production servers overview●   physical server●   delivery vms●   10 workers●   1 ZEO server●   1 monitoring vm (munin)●  ...
Production server caveats●   p.a.caching is wonderful●   workers mem usage keeps growing always●   really slow startup time
Servers●   3 in-house and 4 production servers●   everything in virtual machines●   and everything controlled by fabric●  ...
Notifications●   Shown in browser (“notification area”)●   Example: “you have a new comment”●   Deleted on click●   Create...
Evaluation●   Plone rocks!●   What more could you want?●   Since you ask:    –   member profiles, notifications, limit mem...
Der Freitag, A Use Case
Der Freitag, A Use Case
Der Freitag, A Use Case
Der Freitag, A Use Case
Upcoming SlideShare
Loading in …5
×

Der Freitag, A Use Case

1,742 views

Published on

A talk for the 2012 PloneConf in Arnhem, the Netherlands. Speakers: Gil Forcada, Timo Stollenwerk, Kees Hink. How we built a newspaper website in Plone.

Published in: Technology
  • Login to see the comments

  • Be the first to like this

Der Freitag, A Use Case

  1. Der Freitag: A Use Case How we built a newspaper website in Plone
  2. About the speakers● Gil Forcada● Timo Stollenwerk● Kees Hink
  3. About Der Freitag● Its a printed newspaper● issued weekly● on Thursday● 15.000 copies across Germany● About 40 employees● Left-wing, liberal
  4. Der Freitag Online● freitag.de● web-print integration● numbers? – 53k articles (31k editorial), 330 comments a day, 14k members, 1041 authors, 15k visits daily, 11k unique visitors● Team: Christian Schneider + speakers
  5. Agile Development● Scrum● Pivotal Tracker
  6. Dexterity
  7. Dexterity
  8. Membership● Login/Registration: z3c.form● No membrane● Dexterity member folder● Sync between member profile and folder with event handlers● Behavior to adapt member properties● Registration should/could go into Plone core?
  9. Front page● Folderish structure● “Link” objects that reference existing content● Custom views● Ability to override article title, description, image● Inline management buttons● Drag-and-drop to reorder content
  10. Comments● plone.app.discussion● Complex custom workflow● Blaming / editing / deleting comments● 3 community moderators● Most commented viewlet om front page● About 330 new comments each day● Allow/disallow discussion – behavior => plone.app.dexterity – dexterity support => plone.app.discussion 2.2x???
  11. Development● Git – git merge --no-ff – git rebase -i – git pull -r● Jenkins
  12. Migration● Numbers – 30k articles – 25k blog entries – 20k members – 350k comments● Transmogrifier● MySQL rel DB => Plone● Daily non-incremental migration● Daily Jenkins job● much more work than anticipated, worked well though
  13. Performance Tests● The Grinder● In Jenkins● Helped us identify performance issues (Diazo, catalog)● Warm-up script after instance restart
  14. Release● Stacks of VMs● A script to release
  15. Production servers overview● physical server● delivery vms● 10 workers● 1 ZEO server● 1 monitoring vm (munin)● all errors sent as mails
  16. Production server caveats● p.a.caching is wonderful● workers mem usage keeps growing always● really slow startup time
  17. Servers● 3 in-house and 4 production servers● everything in virtual machines● and everything controlled by fabric● ~150 fabric tasks
  18. Notifications● Shown in browser (“notification area”)● Example: “you have a new comment”● Deleted on click● Created by event handler● Storage: annotation on Member object● Settings
  19. Evaluation● Plone rocks!● What more could you want?● Since you ask: – member profiles, notifications, limit memory usage, way to run long and intensive tasks, replication with ZODB,● Open Spaces

×