Welcome to Press This, the WordPress community podcast from WMR. Here host David Vogelpohl sits down with guests from around the community to talk about the biggest issues facing WordPress developers. The following is a transcription of the original recording.
David Vogelpohl: Hello everyone and welcome to Press This the WordPress community podcasts on WMR. This is your host, David Vogelpohl, I support the WordPress community through my role at WP Engine, and I love to bring the best of the community to you hear every week on press this as a reminder, you can find me on Twitter @wpdavidv, or you can subscribe to press this on iTunes, iHeartRadio, Spotify, or download the latest episodes at wmr.fm. In this episode we’re gonna be talking about a journey optimizing enterprise WordPress for blazing speed and more. I got to see a sneak peek of this is really cool stuff. And joining us for this conversation. I’d like to welcome to press this Atul Jindall. Atul, Welcome.
Atul Jindall: Thank you, David.
DV: So glad to have you here. And for those listening. What we’re going to cover today is a tools journey optimizing an enterprise WordPress site for blazing fast speed delightful search in an optimized approach with a varnish so we’re getting a little nerdy today. So I hope you have your nerd hat on maybe just nerd glasses I don’t know. Think about that. Cool. Well kick us off a tool. I’m going to ask you the same question I asked everyone. Could you briefly tell me your WordPress origin story? When was the first time you use WordPress?
AJ: Thank you, David. So I’ll start with my PHP development. Back in 2007, I started working on PHP as a developer and then after working for a few years I started using WordPress back in 2012 for local businesses around the city, and I like the WordPress backend. System and I thought it was very user friendly to just create small team with local businesses. And then I worked on a couple of other CMS like Drupal Joomla WordPress was one of my favorite choice being easy to work on. And then I started consulting with local firms within the area as well.
DV: That’s fantastic work, says 2012. This would have been two years after custom post types with custom meta fields. Did I have any influence on your decision to try WordPress back in 2012? Or you just were hearing about it or just curious?
AJ: Oh, I I had a couple of CMS says and I was using from 2009 to 2010 soon love but Zula had a lot of complexities for small businesses to use, because the URL structures were not that good. They wanted their websites to be SEO friendly and WordPress had these things built in and was easy to use. So I preferred WordPress over other CMS after that, and I’m that system. I’m using WordPress and I like it.
DV: Excellent. I’m getting like a rush of memories here has some of the same experiences back then our prior address in the kayak. He he also was a PHP developer and it transition he was replacing his homegrown CMS. That’s what that was his backstory. It’s kind of interesting, but a similar kind of journey of yours, too. I understand you do some work with wild growth. And I was just curious like you can you tell me a little bit about them and then what you do for them or otherwise?
AJ: Yeah, a lot. of growth is a consulting agency for enterprise businesses. And I work with them and few other companies like convert crank as a freelance consultant and I help them in high level and price bills as well as consult them on high traffic websites. So how to optimize them and different strategy things as well as writing the developers for managing and building the enterprise load websites from the technical standpoint. So I work on a couple of projects with big brands, potion brands with love, as well as control drank as a freelance consultant.
DV: That’s awesome. Well, we’ve had quite a few guests on talking about building in the enterprise and I was reading through some of your approaches and I’m really excited to get to ask you more about him as we get through the interview here. But I know you know, we have a lot of folks that listen that have, you know, very large WordPress sites or maybe even working in enterprise or even other agencies working on their pricing. I think it’s really interesting to think about the growth there. And then what’s driving it but also the implementation side which you know, I didn’t you have a really good point of view on. Thank you. So I understand. You know, for the project we’re going to talk about today that you can’t share the name of the company, the site you optimize and totally get that. If it really appreciate the insights that you can share, because you roughly explained what the purpose of the site was, was it was like a brochure site, was it students some kind of functionality like just from the high level?
AJ: Yeah, so the website had been Wenders. Basically it was website for keeping manufacturing company are one of the top companies in the world. And they had almost Wenders in every part of world and they had two different portals. Originally, one was in Drupal and one was in Microsoft’s SharePoint or some other both. I don’t remember exactly how they had that in Microsoft, since I was open source to whatever and and one was one portal was their own custom, but they wanted to bring everything all together in one place and they were using WordPress for for good news and marketing purposes for announcements and their head of product wanting to use WordPress as a back end solution in which they have everything all together and wanted to manage the vendors to the CMS. So this was main goal of their project and they wanted to wanted to have WordPress or Drupal in the solution but the team they have for writing and content management, really like the WordPress editors, so they wanted to use WordPress. This is how they chose the WordPress among other other folks in the market.
DV: Wow, those are some incredible insights. So they’re building a site basically to facilitate relationships with their manufacturing vendors. And they’re all over the world. They’re big company. They have Drupal in their stack. They have SharePoint in their stack, they have some custom platform in their stack, and they have WordPress and their stack a little bit then you say the Head of Product says they want to use WordPress for that. And that one of the driving decisions was the ease of use of entering the content. I mean, I think he just wrote like everyone’s like proposal for WordPress to the enterprise for that. And that was awesome. That tool. Yeah. So let me ask you this, right, like I’m just imagining them over there, like sitting there looking at all these systems and being like, which one are we gonna go for this big, important thing? And like, obviously, you know, they’re not thinking like an SMB with a gray like, oh, we have templates we can make a site fast, right? They’re not thinking like that. So what do you think like they’re considered considerations are for the enterprise when making this kind of decision? Like it’s surely it’s more than just the editor but like, what do you think of the the considerations are different than say, how an SMB might look at things?
AJ: Yeah, exactly. So they had a big an enterprise. They had they had a very big concentration about the security in the data, because they had all the vendors which were like 400,000 vendors, records, that was stored originally in Drupal as well as SharePoint, because they have two different working groups. One, one working group was using Drupal and one was using SharePoint. And they wanted to consolidate all those 400,000 records in one place. And for that they had they wanted to have easy migration of the records into the system. And then they had also one consideration of data security being taught most so. So we came up more, you know, with a solution of migrating data and building the custom back end system using using custom post type login for the WordPress so that we can migrate that so I write I wrote some of the rest API’s using using PHP four and then use those rest API’s to be called by WordPress to push the data directly into the customers stripes and then we built a top on the top of that, we’ll do another layer of application
DV: That sounds like Amazon or eBay sounds like the theme that’s kind of emerging here. And the consideration is flexibility and speed, right? They’re like, Okay, we need to get all these records. They’re all complicated, and I suppose to put them I am kind of curious on the security side, you kind of mentioned that a minute ago. And I’d like to kind of unpack that along with some of the other optimizations you did around performance, but we’re gonna take our first break. We’ll be right back. Time to plug into a commercial break. Stay tuned for more press this just a moment. Everyone welcome back to press this WordPress community podcast on W EMR. This is your host David rollerball. I’m in the middle of interviewing at tool Jen doll about a project he did to optimize enterprise WordPress for blazing speed and more. Right before the break you were telling us a little bit about why that particular client in this project chose WordPress and you’re kind of from my perspective, telling this story of flexibility, speed, ease of use, but I was kind of curious a little bit. You know, we kind of promised and teased on some implementation specifics here and I’d really like to get to the meat of that and you had mentioned to me prior to this interview, that you didn’t quite a bit to optimize for performance. So I was wondering if you could kind of walk us through some of the methods you use to optimize this particular build for speed because so far, you’re saying I have a huge database, and people from all around the world are going to see it, I think this is a slow site. How’d you make it fast?
AJ: Yeah, so so we had on the stack, we had mem cache, and we had a lot of niche to optimize the content from database that was one consideration. We wanted to have everything loaded in the memory, when when the record is being pulled from the database. We wanted to have a snapshot of that page for that we used mem cache and the coordination. So, so badly the content delivery faster around other than just using the CDs. And then we had another consideration for the security. We try to hide the WordPress admin from the public domain which was most important thing we we wanted to implement. So for that we had a load balancers and we we just have the WordPress front end on different set of servers. And then we had the back end, staying somewhere else so that people can’t access the word person.
DV: Gotcha. So you’re kind of getting some of the headless benefit, though, by using your load balancers to separate the front end from the back end, basically. Yes, exactly. Did that help with performance?
AJ: Yeah, it helped. You know, since we had we had a shared database that was told you know, on a different server, we have we had a complex architecture on that. So we are using the shared database, but we had all the front end part of staying on a couple of other servers that have a lot in the performance like because we were taking the snapshot of the pages, so that whenever we had some visitor or traffic spiking into the servers, we had the wire mesh to hold that traffic and show the snapshots off the pages. But the search was a big problem. You know, once we had this architecture in place, then we tried to optimize the search because search results were taking too long to to bring up into the system and was not good experience for the users using the default WordPress search at that point in time before
DV: Yeah, what did you move to?
AJ: We tried to use solar search for for optimizing the optimizing the search experience for the users then we we integrated a purchase order, because the enterprise didn’t wanted to go with a premium solution. So they wanted to have everything in house. Go for the enterprise services. So we use open source matches for that.
DV: Ah, interesting. Yeah, WP Engine with our E commerce offering includes elastic press, which is similar to Elastic Search for WordPress optimize. Yeah. One of the benefits of that. I’m just curious if you took advantage of that in this build with these other tools, which I’m not familiar with. But regarding queries when loading web pages, I’m just curious. Like the elastic press solution not only improves the search results, but it will also improve page load speed on pages with lots of queries. I’m just curious if you took advantage of that and your performance optimization in this bill.
AJ: Yeah, that’s a good question. So we we essentially use the solar search for optimizing search queries, but for the pages with lots of tourists, we used mem cache, because we wanted to have you know the custom records from the custom fields since WordPress stores all the records in a worry with a different format, storing the key value pairs in database. So we wanted to have those using the mem cache so that your database doesn’t have to run the query this
DV: Yeah, modeling this offloading those search queries all day long, right? Yeah, yeah. Big, big big day. Yeah, we run our elastic press instance is actually an offloaded cluster. So all the all the pagelet queries and search queries all go off off the WordPress servers. Exactly. The speed there is buddy I when I first added it Well, I mean, they haven’t documented but I discovered it by accident. I turned it on on a site. The site got faster and I was like, what happened? I didn’t do anything like this failure, after all is
AJ: For me, it was like, you know, I was always trying to optimize for WordPress. Feed and I started looking into the database structure, how the content is being stolen, organized in the tables within the database, because we were having different tables, very complex things and wanted to understand the WordPress data storage thing to get an idea that might came across memcached would be the best solution to optimize the WordPress
DV: I gotcha. Let me ask you a question real quick on the search implementation. You kind of said you arrive there because core WordPress search was underperforming, and especially in big databases and stuff like that is is a problem that did you did the customer did they try to like optimize the experience with like custom search results or any sort of like, I’m going to try to try to understand the I guess I don’t really understand the purpose of the site did did they did they try to was it just about making it faster? Did they want to change the experience itself?
AJ: They want to do with change the experience as well with with multiple filters within the search as as well as doing some teams and having some nice layouts and improving the customer journey of the visitors. So they wanted to overwhelm or overlap the overall ramp the experience of the WordPress not just the not just the search performance, they wanted to improve the experience as well.
DV: Yeah, that’s awesome to hear. I know that for a lot of sites, it’s like the last thing on your list to go optimize and it’s such an important part. I read a study last year was something like 43% of shoppers use the search bar in any comm store and are twice as likely to buy and like no, like, whoa, maybe that’s actually kind of nice, right? Yeah. But it’s interesting because search transcends so much of building a site just you know, and beyond things as simple as a product search. It sounds like you’re able to take advantages of a lot of that here.
AJ: Yeah, exactly. Because the content writers only the WordPress because they were publishing stories on a regular basis and back and editor was favorite. So we wanted them to use it. Going for Drupal.
DV: So you’re talking about the content editors. They’re kind of reminded me earlier in this interview, or you were saying what are the decisions that lead here was the ease of use of the editor? And, I mean, it feels like the motivation maybe behind I don’t know if you you have an observation here is that, you know, as people think about what systems they want to create and maintain, they’re also thinking about like how often those users are going to be bugging them in like WordPress for it’s such an easy path for the content creators. I’m just wondering if you see that expressed and your side of these projects.
AJ: Yeah, I do see a lot of value in ease of content creation and having the WordPress so easy to use. For the for the just the writers or people who don’t have technical background as compared to other CMS because in Drupal, they have the editor and still look looks quite complex. These some of these editors
DV: I think are really good. It’s just that like I remember I was in a meeting with a big telecommunications company and they were trying to choose CMS and they had to proprietary and what worked for us and I stood up in front of the room and said here’s how to use the first proprietary people raise your hand. Second proprietary, a few more people. I said WordPress like the entire room raise their hand even the people that knew the other CMS. And I was like, yep, that’s why you might want to consider WordPress. Yeah, exactly.
AJ: Well, first as a great SEO benefits being good for SEO, I think.
DV: Oh, yeah, a lot of the of course the ecosystem of plugins, developers will hire documentation. So many things. Okay. Now I want to kind of bridge this a little bit though. And I wanted to kind of pick your brain and what your favorite parts of this project were, but we’re going to take our last break. We’ll be right back. Time to plug into a commercial break. Stay tuned for more, press this in just a moment. Everyone welcome back to press this WordPress community podcast on Webmaster radio. This is your host David gold Paul and in the middle of interviewing a tool about optimizing WordPress for speed tool right before the break. We were talking a little bit about the role of the user experience and guiding the decisions of enterprises when choosing a CMS. Oh, there’s a lot of talking about that. But I kind of want to now leave it open to you like this was a pretty big project for you. You had a lot of complex parts. What was your favorite part of the project and why?
AJ: Yeah, so my favorite part of Project was actually that’s funny story. In the beginning, I was very, very excited to use WordPress, but when when it came to optimizing it, because we started building things and everything team was built up and then installed site went drastically slow because the data size was so huge, it was like in gigabytes, right. So so then then I told them like, this is getting slow, we should get something enterprise for either for caching or something. They said no, we, we will go with the open source solutions. And then I scratched my head to think about like, how should I architect this or for performance? Then Then we had started looking into a couple of options and we came up with a war mesh thing, and memcached and solar. So I would say for for enterprise websites, the best ways to think about like performance first that would be my suggestion on this
DV: If I could do like paraphrase it is the customer comes in with the requirements to use this source. And you’re thinking like, Oh, I could just, you know, solve it with this proprietary tool or something. And and then they add the constraint constraints are always the fun part of projects right? Now you gotta go like figure it out and architect the open source way did you do you think like you’re more likely to like choose Open Source next time or do you still think like sometimes it is proprietary easy way out. So are they even that easy? Did you did you find the open source solutions superior for some reason?
AJ: no, I think open source are best. And I would go with open source as well, if I need to go. The only thing I would say is some things that I that I lost in this project in the beginning was we were not considering the performance based on the data science. We were fewer more focused on helping the content marketing team and the user experience guys to build the beautiful design. So choosing over enterprise or choosing over open source entirely depends on the patterns. Sometimes companies have do have the budgets in their pockets to perform a big enterprise solution. Sometimes they just want to have developers scratch their heads and find a solution within the constraints.
DV: I get it sounds like though, like if you had a lesson to learn from the project, it sounds like like check the performance side earlier in the project. Is that a safe assumption?
AJ: Yeah, think about that. performance rather than just trying to please the UX guys.
DV: Yeah, cuz it’s funny because like when I think of UX, I think of it I often describe it as the balance of suffering and joy. The joy of bringing a new visual experience to someone and the suffering of pagelet time you add when you do that yeah, right. Yeah, you have to keep that balance in check to build a performance and good website. Well, this sounds like a really exciting project. Are you happy? Did you go out it’s out the door.
AJ: Yeah, I really enjoyed it and I had three very, very strong learnings from this enterprise level build, because we had, we had considered how to optimize this infrastructure as well for future developments. So there was a lot of things that are learned in this project.
DV: Excellent. Well, you can that’s always a wonderful thing. So glad to hear it. Well, tool. I really enjoyed hearing your story today and appreciate you sharing it. Thank you so much for joining us here on the show. Yeah, absolutely. Awesome. Thank you. Thank you. If you’d like to check out some of what a tool has been up to, you can visit loud groov.com Thanks, everyone for listening to press this the WordPress community podcast on WMR. Again, this is your host David Vogelpohl. I support the WordPress community through my role at WP Engine. And I love to bring the best of the community to you here every on Press This.