Wordpress at New York University

Post on 08-Feb-2017

77 views 0 download

Transcript of Wordpress at New York University

Effectively manage and Scale WordPress Multisite and

Importance of Insights

Neel Shah@neelshah91

New York University

Harshit Sanghvi@harshit_ps

Contents● WP at NYU● Plugin/Theme Update Process● Mirroring Production to Dev/QA● Dynamic Site Creation Process● Importance of Insights

https://wp.nyu.edu

Web Publishing - Stats● 5227 Sites● 17880 Users● 65 Plugins● 52 Themes

Site Type:

● 52% Teaching & Learning ● 39% Personal● 9% Administrative

https://wp.nyu.edu

Web Publishing - Stack● AWS EC2 Instance● Amazon Aurora DB● Redis Cache● PHP 7● NGINX Server● Shibboleth Single Sign On

Selecting Hosting Provider● Your Current Team● Level of Support● Level of Access● Flexibility● Support for Single Sign On● Production and Dev Resource Sharing● Cost

Plugin/ Theme Update Process

● Benefits○ Avoid unwanted code in Production○ Shorter release cycles

● Tools○ CAC tools for wp-cli

(https://github.com/cuny-academic-commons/wp-cli-cac)○ Behat for unit tests○ Jenkins CI

Plugin/ Theme Update Process

Mirroring Production to Dev/ QA

Mirroring Production to Dev/ QA● Benefits

○ Fully mirrored Dev/QA environment○ Backup db for large multisite○ Migrate from one hosting provider to another

● Tools○ Mirror_db (https://github.com/neelakansha85/mirror_db)○ Jenkins CI

New Site Creation Process - wp-signup.php

SELECT TYPE

Dynamic Site Creation Process

CHOOSE WHAT YOU NEED

Essential Settings

MAKE IT PRETTY

Themes

SELECT PLUGINS

Features

YAY!

Finish

● Benefits○ Enhancing current wp-signup page

● Tools○ Site Setup Wizard

(https://wordpress.org/plugins/site-setup-wizard)

Dynamic Site Creation Process

Importance of Insights into Multisite

Some unanswered questions● How many sites are being created and when? ● What is the most popular theme or a plugin among all the sites? ● Are all my plugins compatible with latest WordPress version? ● Are any of my 10000s sites getting spammed? ● Is some user misbehaving within my multisite environment which affect

overall network performance? ● How are my users connected to each other through different sites?

WP Network Stats● Developed for New York University● Can answer all of the above questions and many more● Features -

○ Background processing for generating new statistics for the network. It allows you to safely generate stats without compromising the performance of your large multisite network.

○ Ability to fine tune batch processing settings.○ Protected network admin settings.○ Notification when the stats are available.○ Analytics dashboard using D3 charts to gain insights into some of the generated data.○ Generates set of CSV files corresponding to different types of stats.○ You can selectively generate the stats you need - Sites Stats, Plugins Stats, Themes Stats

or Users Stats.

Multidimensional Detective● Find sites with >200 users, >20 active plugins, >1000 posts, >5000

comments or >1000 attachments

Multidimensional Detective● Find sites with >200 users, >20 active plugins, >1000 posts, >5000

comments or >1000 attachments

Some Insights from NYU’s WordPress service

Sites Created By Date vs. Time of Day

Site Privacy, Active Theme, DB Version

Sites Registered Over Time

Users Registered between two dates

Users Interconnection

Use cases● Send targeted communication emails. e.g.,

○ To all the admins of sites which has more than 1000 attachments about potential violation of terms of use.

○ To site admin who is allowing comments from public about potential spam issues.○ To all the users who use a specific plugin/theme about upcoming changes to that

plugin/theme.

● Decide migration strategies when replacing/retiring a plugin/theme based on its usage.○ What to do when a plugin/theme is found incompatible with latest WordPress release

● Archive/delete sites or content created by alumni.

Thank You

Harshit Sanghvi@harshit_ps

Neel Shah@neelshah91

Questions?