92
Scaling Confluence From performance to people Tim Colson, SW Architect, Cisco* *The views expressed in this presentation are mine and do not necessarily reflect the views of Cisco. 1

Scaling Confluence: From Performance to People

Embed Size (px)

DESCRIPTION

A good wiki grows — more people and content, uses and demands. What begins as a simple experiment in collaboration, explodes into a new Intranet or a mission critical web application. This session focuses on how to architect Confluence for scale and configure it for growing user needs.Atlassian Speaker: Charles MillerCustomer Speaker: Tim Colson of CiscoKey Takeaways: * Best practices in tuning and performance * Administrative tips-and-tricks for improved performance and management * Lessons from customers

Citation preview

Page 1: Scaling Confluence: From Performance to People

Scaling Confluence

From performance to people

Tim Colson, SW Architect, Cisco**The views expressed in this presentation are mine and do not necessarily reflect the views of Cisco.

1

Page 2: Scaling Confluence: From Performance to People

Who is Tim?

2

Page 3: Scaling Confluence: From Performance to People

Who is Tim?Geek!

• Microbiology

• Internet Developer

• Systems Architect @ Cisco

2

Page 4: Scaling Confluence: From Performance to People

Who is Tim?Geek!

• Microbiology

• Internet Developer

• Systems Architect @ Cisco

Collaborator

2

Page 5: Scaling Confluence: From Performance to People

Who is Tim?Geek!

• Microbiology

• Internet Developer

• Systems Architect @ Cisco

Collaborator

Confluence User since v1.0

2

Page 6: Scaling Confluence: From Performance to People

3

Why am I here?

2004 2005 2006 2007 2008 2009

500K+pages?

Page 7: Scaling Confluence: From Performance to People

3

Why am I here?Experience with rapid growth and large scale wiki

2004 2005 2006 2007 2008 2009

500K+pages?

Page 8: Scaling Confluence: From Performance to People

3

Why am I here?Experience with rapid growth and large scale wiki

Over 70,000 users

2004 2005 2006 2007 2008 2009

500K+pages?

Page 9: Scaling Confluence: From Performance to People

3

Why am I here?Experience with rapid growth and large scale wiki

Over 70,000 users

250,000 pages / 4,000 spaces

2004 2005 2006 2007 2008 2009

500K+pages?

Page 10: Scaling Confluence: From Performance to People

3

Why am I here?Experience with rapid growth and large scale wiki

Over 70,000 users

250,000 pages / 4,000 spaces

~6K active contributors (30d)

2004 2005 2006 2007 2008 2009

500K+pages?

Page 11: Scaling Confluence: From Performance to People

3

Why am I here?Experience with rapid growth and large scale wiki

Over 70,000 users

250,000 pages / 4,000 spaces

~6K active contributors (30d)

~25K total contributors (4yrs)

2004 2005 2006 2007 2008 2009

500K+pages?

Page 12: Scaling Confluence: From Performance to People

3

Why am I here?Experience with rapid growth and large scale wiki

Over 70,000 users

250,000 pages / 4,000 spaces

~6K active contributors (30d)

~25K total contributors (4yrs)

~300-400K views daily 2004 2005 2006 2007 2008 2009

500K+pages?

Page 13: Scaling Confluence: From Performance to People

Scalable Collaboration

4

Page 14: Scaling Confluence: From Performance to People

Scalable Collaboration

4

SW HW

Page 15: Scaling Confluence: From Performance to People

Scalable Collaboration

4

SW

(User Activity)3

HW

Page 16: Scaling Confluence: From Performance to People

Scalable Collaboration

4

SW

(User Activity)3

ConfigurationHW

Page 17: Scaling Confluence: From Performance to People

Scalable Collaboration

4

SW

(User Activity)3 Innovation

ConfigurationHW

Page 18: Scaling Confluence: From Performance to People

Scalable Collaboration

5

SW(User Activity)3 Innovation

ConfigurationHW

Page 19: Scaling Confluence: From Performance to People

SW + HW

Cluster?

6

Page 20: Scaling Confluence: From Performance to People

SW + HW

Cluster?Confluence rocks on a single node!

6

Page 21: Scaling Confluence: From Performance to People

SW + HW

Cluster?Confluence rocks on a single node!

Cluster adds complexity and width

6

Page 22: Scaling Confluence: From Performance to People

SW + HW

Cluster?Confluence rocks on a single node!

Cluster adds complexity and width

Recommendations

• Version 2.x - Tim says “Meh”

• Version 3.x - Tim says, “Yay!”

6

Page 23: Scaling Confluence: From Performance to People

SW + HW

Cluster?Confluence rocks on a single node!

Cluster adds complexity and width

Recommendations

• Version 2.x - Tim says “Meh”

• Version 3.x - Tim says, “Yay!”

Approach

• big honkinʼ servers

• separate instances

6

Page 24: Scaling Confluence: From Performance to People

SW

All ur UX belong to us!

7

Page 25: Scaling Confluence: From Performance to People

SW

All ur UX belong to us!

7

Page 26: Scaling Confluence: From Performance to People

SW

User Experience

8

Page 27: Scaling Confluence: From Performance to People

SW

User Experience

8

Drop down for 3,500 spaces = FAIL!

Page 28: Scaling Confluence: From Performance to People

SW

User Experience

8

Drop down for 3,500 spaces = FAIL!

Paging 50,000 users = FAIL!

Page 29: Scaling Confluence: From Performance to People

SW

User Experience

8

Drop down for 3,500 spaces = FAIL!

Paging 50,000 users = FAIL!

People search returns 6 of 500 “Tims” = FAIL!

Page 30: Scaling Confluence: From Performance to People

SW

User Experience

8

Drop down for 3,500 spaces = FAIL!

Paging 50,000 users = FAIL!

People search returns 6 of 500 “Tims” = FAIL!

Approach

Page 31: Scaling Confluence: From Performance to People

SW

User Experience

8

Drop down for 3,500 spaces = FAIL!

Paging 50,000 users = FAIL!

People search returns 6 of 500 “Tims” = FAIL!

Approach

• customi[sz]ation (more later), training, policy, configuration

Page 32: Scaling Confluence: From Performance to People

SW

User Experience

8

Drop down for 3,500 spaces = FAIL!

Paging 50,000 users = FAIL!

People search returns 6 of 500 “Tims” = FAIL!

Approach

• customi[sz]ation (more later), training, policy, configuration

• feedback to Atlassian

Page 33: Scaling Confluence: From Performance to People

SW

Web 2.0 Integration

9

Page 34: Scaling Confluence: From Performance to People

SW

Web 2.0 Integration

Must be bullet proof

9

Page 35: Scaling Confluence: From Performance to People

SW

Web 2.0 Integration

Must be bullet proof

Instability leads to Instability

9

Page 36: Scaling Confluence: From Performance to People

SW

Web 2.0 Integration

Must be bullet proof

Instability leads to Instability

9

Page 37: Scaling Confluence: From Performance to People

SW

Web 2.0 Integration

Must be bullet proof

Instability leads to Instability

Approach: limit exposure

9

Page 38: Scaling Confluence: From Performance to People

Scalable Collaboration

10

SW

Innovation

ConfigurationHW

(User Activity)3

Page 39: Scaling Confluence: From Performance to People

User Activity

Complex Markup

11

{style}{section}{column:width=70%}{panel:borderStyle=solid|borderColor=#e6e6e6|bgColor=#FFFFFF|}{center}h1. *Milestone*{align:center}{table-plus}| !img7.jpg!| milestones |{table-plus}{align}h6. {color:black}Click the +*buttons*+ below {align:center}{section}{section}[!roadmapspic3.bmp!|http://zed.cisco.com/confluence/display/CPDA/Milestones]{align}{include:Team}{toc:minLevel=4}{column}

Page 40: Scaling Confluence: From Performance to People

User Activity

Complex Markup

At risk: UX, Adoption, Collaboration, Support

11

{style}{section}{column:width=70%}{panel:borderStyle=solid|borderColor=#e6e6e6|bgColor=#FFFFFF|}{center}h1. *Milestone*{align:center}{table-plus}| !img7.jpg!| milestones |{table-plus}{align}h6. {color:black}Click the +*buttons*+ below {align:center}{section}{section}[!roadmapspic3.bmp!|http://zed.cisco.com/confluence/display/CPDA/Milestones]{align}{include:Team}{toc:minLevel=4}{column}

Page 41: Scaling Confluence: From Performance to People

User Activity

Complex Markup

At risk: UX, Adoption, Collaboration, Support

Approach: forums, blogs, screen casts

11

{style}{section}{column:width=70%}{panel:borderStyle=solid|borderColor=#e6e6e6|bgColor=#FFFFFF|}{center}h1. *Milestone*{align:center}{table-plus}| !img7.jpg!| milestones |{table-plus}{align}h6. {color:black}Click the +*buttons*+ below {align:center}{section}{section}[!roadmapspic3.bmp!|http://zed.cisco.com/confluence/display/CPDA/Milestones]{align}{include:Team}{toc:minLevel=4}{column}

Page 42: Scaling Confluence: From Performance to People

User Activity

Macros & Plugins

12

0 macros50%

1-4 macros43%

>57%

Page 43: Scaling Confluence: From Performance to People

User Activity

Macros & Plugins

Approach: governance / separate instances

12

I get coffee while it loads... then it’s FAST!

0 macros50%

1-4 macros43%

>57%

Page 44: Scaling Confluence: From Performance to People

User Activity

Access Restrictions

13

Page 45: Scaling Confluence: From Performance to People

User Activity

Access RestrictionsPerceived need and fear

13

Page 46: Scaling Confluence: From Performance to People

User Activity

Access RestrictionsPerceived need and fear

Web site vs. Collaborative space

13

Page 47: Scaling Confluence: From Performance to People

User Activity

Access RestrictionsPerceived need and fear

Web site vs. Collaborative space

Scalability issue

13

Page 48: Scaling Confluence: From Performance to People

User Activity

Access RestrictionsPerceived need and fear

Web site vs. Collaborative space

Scalability issue

13

Page 49: Scaling Confluence: From Performance to People

User Activity

Access RestrictionsPerceived need and fear

Web site vs. Collaborative space

Scalability issue

Approach: training, policy, tricks

13

Page 50: Scaling Confluence: From Performance to People

User Activity

Support

Approach

• Consolidate requests inside the enterprise

• Feedback to Atlassian14

ITUser Support

???? ??

???? ??

? ???? ??

???? ??

Page 51: Scaling Confluence: From Performance to People

Scalable Collaboration

15

SW

(User Activity)3 Innovation

ConfigurationHW

Page 52: Scaling Confluence: From Performance to People

Configuration

Policy affects Usage

16

... or ...

Page 53: Scaling Confluence: From Performance to People

Configuration

Space!

17

Page 54: Scaling Confluence: From Performance to People

Configuration

Space!

17

Page 55: Scaling Confluence: From Performance to People

Scalable Collaboration

18

SW

(User Activity)3 Innovation

ConfigurationHW

Page 56: Scaling Confluence: From Performance to People

Innovation

Good vs. Evil

19

“...technologies are morally neutral

until we apply them.”

- William Gibson

Page 57: Scaling Confluence: From Performance to People

Enterprise Theme

250 authors

35 spaces

2,500 pages

20

Page 58: Scaling Confluence: From Performance to People

Enterprise Theme

250 authors

35 spaces

2,500 pages

20

25,000 authors

3,500 spaces

250,000 pages

Page 59: Scaling Confluence: From Performance to People

Innovation

Theme & Spacemap

21

Page 60: Scaling Confluence: From Performance to People

Innovation

Theme & Spacemap

21

Page 61: Scaling Confluence: From Performance to People

Innovation

Theme & Spacemap

21

Page 62: Scaling Confluence: From Performance to People

Innovation

Metrics & Analytics

Approach: SQL on Confluence DB

22

0

25

50

75

100

2007 2008 2009 2010

ContentCollaboration ?

Page 63: Scaling Confluence: From Performance to People

Innovation

Rogue Servers

23

Page 64: Scaling Confluence: From Performance to People

Innovation

Rogue ServersWhat are they?

23

Page 65: Scaling Confluence: From Performance to People

Innovation

Rogue ServersWhat are they?

Why care?

23

Page 66: Scaling Confluence: From Performance to People

Innovation

Rogue ServersWhat are they?

Why care?

Approach

• Embrace them!

• Engage them!

23

Page 67: Scaling Confluence: From Performance to People

Summary

24

Large scale collaboration is more than just SW + HW.

Tim Colson @ gmail/yahoo/me dot com

Page 68: Scaling Confluence: From Performance to People

Scaling Confluence

From Performance to People

Page 69: Scaling Confluence: From Performance to People

Charles MillerConfluence Architect

Page 70: Scaling Confluence: From Performance to People

Numbers

Page 71: Scaling Confluence: From Performance to People

0

1,250

2,500

3,750

5,000

Average response time (in ms) for various Confluence operations

2.10.3 3.0-beta2

Page 72: Scaling Confluence: From Performance to People

0

750

1,500

2,250

3,000

Average response time (in ms) for various Confluence operations (Clustered)

2.10.3 3.0-beta2

Page 73: Scaling Confluence: From Performance to People

Throughput

2.10.3

3.0-beta2

Page 74: Scaling Confluence: From Performance to People

Throughput

2.10.3

3.0-beta2

Page 75: Scaling Confluence: From Performance to People

Throughput

2.10.3

3.0-beta2

Page 76: Scaling Confluence: From Performance to People

CPU Idle (8 cores)

2.10.3 ~30%

3.0-beta2 ~5%

http://confluence.atlassian.com/display/DOC/Performance+Testing+Scripts

Page 77: Scaling Confluence: From Performance to People

On the Roadmap

• Improved page moving and reordering for large spaces

• Improvements for instances with large numbers of spaces

• Improve user management

• Continue to work on performance, clustering, stability, documentation

Page 78: Scaling Confluence: From Performance to People

Mind the Gap

Page 79: Scaling Confluence: From Performance to People

You Are Going to Need It

• Change Control

• System Monitoring

• Load Testing

• Staged Upgrades

• Tuning

Page 80: Scaling Confluence: From Performance to People

Tuning• Database

• Application Server

• Operating System

• JVM

• Confluence

Don’t be afraid to ask for help.

Page 81: Scaling Confluence: From Performance to People

Clustering

Page 82: Scaling Confluence: From Performance to People

User Management

• Number of users and groups

• Number of groups per user

• Response time for external user management

Page 84: Scaling Confluence: From Performance to People

{cache}

{future}

Page 85: Scaling Confluence: From Performance to People

Plugin Management

Page 86: Scaling Confluence: From Performance to People
Page 87: Scaling Confluence: From Performance to People

Customi[sz]ation

Page 89: Scaling Confluence: From Performance to People

Talk to us

Page 90: Scaling Confluence: From Performance to People

Talk to us

Page 91: Scaling Confluence: From Performance to People

Talk to us

Page 92: Scaling Confluence: From Performance to People

Talk to us