Speed up my PHP/MySQL Laravel API
Budget: £20 – £250 GBP
I have a laravel API running on a VPS, using NGINX, MySQL and PHP. It's a very basic setup, but it's running quite slowly. Most queries take around 1200s or longer to be returned. I would like you to quote for getting all queries return in <500ms. The database is small, with 5 tables and around 200 total entries.
Here are some details about the API:
- almost all endpoints are a single MySQL query, and return no more than 10 records and are <100kb
- POST endpoints are simple UPDATE queries, updating a single row by ID
- All queries are sent with a Firebase JWT token which is decoded on the VPS (no call to Firebase required) and used to get user details
- The VPS is the cheapest one at https://www.vpsserver.com/linux-vps/. I would be open to upgrading the VPS if it will make a meaningful difference to speed.
- I have attached a Postman for testing. You will need the token at the end of this description (which will expire in 1 hour)
Please quote for getting all endpoints down to <0.5s. Partial release for getting some of the endpoints down to that speed is not a problem, but small improvements will not result in payment.
Thanks very much,
Rob
eyJhbGciOiJSUzI1NiIsImtpZCI6IjBkMGU4NmJkNjQ3NDBjYWQyNDc1NjI4ZGEyZWM0OTZkZjUyYWRiNWQiLCJ0eXAiOiJKV1QifQ.eyJuYW1lIjoiUm9iIiwiaXNzIjoiaHR0cHM6Ly9zZWN1cmV0b2tlbi5nb29nbGUuY29tL2xlYXJuYW55dGhpbmctMTg3YzQiLCJhdWQiOiJsZWFybmFueXRoaW5nLTE4N2M0IiwiYXV0aF90aW1lIjoxNjk3ODEyMzkyLCJ1c2VyX2lkIjoiZk1wVEhma3M2RU5BQkR3MlFEcnRlOG9sQU1KMyIsInN1YiI6ImZNcFRIZmtzNkVOQUJEdzJRRHJ0ZThvbEFNSjMiLCJpYXQiOjE2OTgzMjk3MjMsImV4cCI6MTY5ODMzMzMyMywiZW1haWwiOiJhc2RmQGFzZGYuY29tIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJmaXJlYmFzZSI6eyJpZGVudGl0aWVzIjp7ImVtYWlsIjpbImFzZGZAYXNkZi5jb20iXX0sInNpZ25faW5fcHJvdmlkZXIiOiJwYXNzd29yZCJ9fQ.NQynVZPAjCn2OAtyD6iy_WxM27Y1hzzNAurrGSxUHYKHaJWwze4NUaqVbwOFAfIUFx8rP3Iw0yyPdz7fWBwEGxnXivEznQTP-ARmSCnEZljHV8kF5p0akI5hQEUdi4yzCBnfuEu_AMPUl2giTa2Ul7zoVcIxKOjgsJYYx5JS7R09l2qQxzILBZpE0Y6qyfOCS9s5q48vF6bE0jcNHU81a33xzPhyPMjObdLUFTs6Cr8ZOV5XONuqlzhu1Cack8RvMGLdZMak77JrPb476nCWw7YlNWyff3EZyxoX15fZiDKklEJolEX3_mKBx-4RmggLjf_B-cio4GcNZKYSLQZDEA
Here are some details about the API:
- almost all endpoints are a single MySQL query, and return no more than 10 records and are <100kb
- POST endpoints are simple UPDATE queries, updating a single row by ID
- All queries are sent with a Firebase JWT token which is decoded on the VPS (no call to Firebase required) and used to get user details
- The VPS is the cheapest one at https://www.vpsserver.com/linux-vps/. I would be open to upgrading the VPS if it will make a meaningful difference to speed.
- I have attached a Postman for testing. You will need the token at the end of this description (which will expire in 1 hour)
Please quote for getting all endpoints down to <0.5s. Partial release for getting some of the endpoints down to that speed is not a problem, but small improvements will not result in payment.
Thanks very much,
Rob
eyJhbGciOiJSUzI1NiIsImtpZCI6IjBkMGU4NmJkNjQ3NDBjYWQyNDc1NjI4ZGEyZWM0OTZkZjUyYWRiNWQiLCJ0eXAiOiJKV1QifQ.eyJuYW1lIjoiUm9iIiwiaXNzIjoiaHR0cHM6Ly9zZWN1cmV0b2tlbi5nb29nbGUuY29tL2xlYXJuYW55dGhpbmctMTg3YzQiLCJhdWQiOiJsZWFybmFueXRoaW5nLTE4N2M0IiwiYXV0aF90aW1lIjoxNjk3ODEyMzkyLCJ1c2VyX2lkIjoiZk1wVEhma3M2RU5BQkR3MlFEcnRlOG9sQU1KMyIsInN1YiI6ImZNcFRIZmtzNkVOQUJEdzJRRHJ0ZThvbEFNSjMiLCJpYXQiOjE2OTgzMjk3MjMsImV4cCI6MTY5ODMzMzMyMywiZW1haWwiOiJhc2RmQGFzZGYuY29tIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJmaXJlYmFzZSI6eyJpZGVudGl0aWVzIjp7ImVtYWlsIjpbImFzZGZAYXNkZi5jb20iXX0sInNpZ25faW5fcHJvdmlkZXIiOiJwYXNzd29yZCJ9fQ.NQynVZPAjCn2OAtyD6iy_WxM27Y1hzzNAurrGSxUHYKHaJWwze4NUaqVbwOFAfIUFx8rP3Iw0yyPdz7fWBwEGxnXivEznQTP-ARmSCnEZljHV8kF5p0akI5hQEUdi4yzCBnfuEu_AMPUl2giTa2Ul7zoVcIxKOjgsJYYx5JS7R09l2qQxzILBZpE0Y6qyfOCS9s5q48vF6bE0jcNHU81a33xzPhyPMjObdLUFTs6Cr8ZOV5XONuqlzhu1Cack8RvMGLdZMak77JrPb476nCWw7YlNWyff3EZyxoX15fZiDKklEJolEX3_mKBx-4RmggLjf_B-cio4GcNZKYSLQZDEA