As an API with a lot of complex data, our bottleneck is and always has been serializing. It has been a long journey for us to get the most performance out of this. We are proud of what we’ve accomplished. Let me share our journey trying a lot of alternatives in PHP; Including JMS Serializer, pure json decode, better serializer, Symfony serializer. And in the end: A colleague wrote php-to-go so that we could GO beyond PHP, using PHP and GoLang together, for an amazing performance boost.


Comments are closed.

Compact, very informative and practical talk. On Michelle's opening comment that it's hard to talk in front of people, it always is for everyone. She's actually a very good, clear talker and her experience as a developer carried her through well.

Pieter Gerber at 15:02 on 27 Sep 2018

Very interesting topic. Thank you for the information on implementing Go with PHP for better API performance. Job well done Michelle.

Andre Smith at 15:07 on 27 Sep 2018

I learnt that serialization in PHP is slower that in Go. I also learned that one can marry the two languages. Michelle did a great job of introducing the problem first, then leading to a possible solution, and then ending with a pure PHP solution. Can't wait for their library to go open source.
I was impressed with her public speaking ability. Job well done!

Peter at 15:35 on 27 Sep 2018

Great talk. I wonder how bigna perfomance improvement you would get if this was written as a C extension

Thanks, was a good talk. Enjoyned how you took it full-circle from PHP, to Go, back to PHP and showed what you learned.

Liam Norman at 18:10 on 28 Sep 2018

An amazing talk, and really interesting. A very interesting problem and the way that you solved it was very smart!

Justin Fossey at 16:11 on 2 Oct 2018

This talk was very surprising for me. There were several surprising lessons learned. Clearly the serialization I have been doing is very basic in comparison, and the fact that you are able to marry Go with PHP was something I had never thought of.

Michelle seemed a bit nervous at the beginning, maybe because of the minor IT issues leading up to her talk, but she settled into the talk soon after starting and gave a great talk.

Going forward I am going to look at serialization very differently keeping an eye on performance and the fact that serialization can always be expanded to use features I have not required yet like annotations.

I think the only thing I would have enjoyed seeing was a basic summary of what is advanced serialization. There was a quick show of hands to see if anybody does not know what serialization is, but something I learned as the talk progressed was that there is every day serialization and then there is advanced serialization. Maybe when going into the more complex elements of the talk having covered all the possible features of advanced serialization at the beginning would have been nice and helped me follow along.

Interesting and informative. This was a clear demonstration of the "Out of the box thinking" mentality sometimes required by our industry, while still keeping your feet on the ground.