Я пишу веб-сайт для мобильного приложения. Он должен поддерживать HTTPS. Большая часть моего опыта работы в .NET, но для этого я хочу использовать Go/Golang. У меня есть готовый сервис, теперь мне нужно убедиться, что он готов к производству. В .NET Я просто использую IIS, но я не знаю, что было бы хорошим подходом для Go.
Должен ли я иметь nginx в качестве обратного прокси, или лучше использовать FastCGI? И как убедиться, что приложение go go up и будет работать при перезагрузке системы? следует ли использовать выскочку или что-то подобное?Развертывание Go/Golang REST Web API для производства
ответ
Я использую Nginx FastCGI с веб-сервисом Go - они хорошо работают вместе. Это не сложнее настроить, чем обратное проксирование HTTP - за исключением того, что вам нужно научиться этому. Производительность в принципе должна быть намного лучше, но у меня нет никаких измерений, чтобы оправдать эту догадку. Мой веб-сервис может работать как в режиме HTTP, так и в режиме FastCGI (один или другой за раз), поэтому я полагаю, что я должен выполнить некоторый бенчмаркинг (обратите внимание на себя!).
Если вам нужен правильный запуск системы (и вам нужно), вам нужно узнать, как работают скрипты init. Я иногда обманываю и начинаю с существующего рабочего скрипта, который кто-то написал для подобного приложения и настроил его для работы с моим.
Я использовал nginx в качестве обратного прокси для проектов Go. Я обнаружил, что гораздо проще настроить полезные параметры сервера, такие как TLS, сжатие и т. Д., В nginx, а не как чистый сервер Go.
Сохранение его при перезагрузке сервера является более сложным вопросом. Я бы посоветовал научиться писать сценарий/что угодно для демона инициализации сервера и просто делать это именно так.
- 1. Развертывание ClickOnce для производства
- 2. Развертывание Django для производства
- 3. Развертывание углового 2 для производства
- 4. Развертывание приложения Node.js для производства
- 5. REST Web Service для Tomcat
- 6. Web API 2 REST маршрут
- 7. Простой WEB API REST Project
- 8. Spring Java Web: REST API
- 9. Rest WCF против Web API
- 10. отключить angular2 in-memory-web-api для производства
- 11. Akka HTTP REST API для производства на производительность Kafka
- 12. ASP.NET Web Api - целевой URI и развертывание
- 13. создать проект для sonarqube с rest-api/web-api
- 14. REST Web Service для ResKit
- 15. Развертывание кода из SVN для производства
- 16. Развертывание веб-приложений для производства через GitHub
- 17. Развертывание ASP.NET MVC 4 Web API
- 18. Развертывание производства SVN на Commit
- 19. Windows 10 IoT - развертывание API REST
- 20. Развертывание проекта Composer для Web
- 21. Угловой MVC Web API 2 Развертывание для удаленной задачи IIS
- 22. Разница между WCF REST VS WEB API
- 23. REST Web API Design for Bulk read
- 24. REST Web API - отношение «многие ко многим»
- 25. REST Web api application data management
- 26. ASP.NET MVC Web app to REST API
- 27. Является ли Web Api REST Service
- 28. Amazon Web Services REST Api Issues
- 29. Rest Web Service,
- 30. Как использовать безопасный Rest MVC web api
У меня были хорошие результаты, используя Nginx поверх API Go; Nginx заботится о SSL и добавляет поддержку SPDY и т. Д. Легко. Используя Nginx handle deflate/gzip, SSL также упростит ваш код Go API. –
Вы используете nginx в качестве обратного прокси-сервера или используете FastCGI? И как вы поддерживаете свое приложение? – Tamerlane
Nginx как обратный прокси - это бомба da, отлично работает и для меня, с рабочей нагрузкой сотен устойчивых RPS –