Hosting for Java Web App

User avatar
Montchik
Уже с Приветом
Posts: 2119
Joined: 27 Dec 1999 10:01
Location: Воронеж -> Naperville, IL

Hosting for Java Web App

Post by Montchik »

Желаю написать онлайн шашки забавы ради. На ява + web stack (html 5/css/javascript/) + ДБ. Для многих юзеров одновременно играющих на одном поле! :D С модерновыми front end технологиями пока разбираюсь, но вопрос не об этом.

Хочу обсудить где лучше это хостить. Значит, посмотрел-сравнил следующее, пожалуйста зацените:
  • Amazon AWS - явно заточен под корпорации.
    MS Azure - заточен по ms продукты и под корпорации.
    Google Cloud - вроде ничего. Настораживает только что придется ранить аппку на их App Server и пользовать их клон MS SQL. Я бы предпочел стандартные сервер и бд.
    Heroku - хочет чтобы ее proprietary API был вставлен в app code. Значить я не смогу легко перескачить на кого-то другого если че. Не ндрда...
    CloudFoundry - сразу не понра, похоже что отмирает...
На вопрос нафик изобретать еще один детский самокат отвечаю сразу - кризис у меня среднего возраста, вот и лезет в бошку всякая дурь. :old:
XpoH
Уже с Приветом
Posts: 2136
Joined: 08 Nov 2013 22:33
Location: SFBA

Re: Hosting for Java Web App

Post by XpoH »

автор что-нибудь слышал про докер?
User avatar
Montchik
Уже с Приветом
Posts: 2119
Joined: 27 Dec 1999 10:01
Location: Воронеж -> Naperville, IL

Re: Hosting for Java Web App

Post by Montchik »

Неа! Че это?
User avatar
Boriskin
Уже с Приветом
Posts: 18906
Joined: 30 Aug 2001 09:01
Location: 3rd planet

Re: Hosting for Java Web App

Post by Boriskin »

Амазон был хорош тем, что было много халявы вперед и оплата пропорциональна пользованию - мало юзверей - практически (или реально) бесплатно. Так было с год назад, когда я смотрел в их сторону со своим побочным проектиком, счас не перепроверял, но не думаю что что-то сильно изменилось.
Тупизна как Энтропия. Неумолимо растет.
User avatar
Montchik
Уже с Приветом
Posts: 2119
Joined: 27 Dec 1999 10:01
Location: Воронеж -> Naperville, IL

Re: Hosting for Java Web App

Post by Montchik »

Амазон меня напугал предлагаемым количеством сервисов и фичей, и еще их прайсинг какой-то слишком навороченный. Под больших клиентов они затожены похоже.
User avatar
Мальчик-Одуванчик
Уже с Приветом
Posts: 15526
Joined: 27 Sep 2007 22:53

Re: Hosting for Java Web App

Post by Мальчик-Одуванчик »

DigitalOcean
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Hosting for Java Web App

Post by Sergunka »

Montchik wrote: 20 Apr 2018 19:00 Heroku - хочет чтобы ее proprietary API был вставлен в app code. Значить я не смогу легко перескачить на кого-то другого если че. Не ндрда...
CloudFoundry - сразу не понра, похоже что отмирает...
Хероку и Клоуд Фоундри это одно и тоже... просто для справки. С API для Клоуда Фоундри тут довольно просто только надо иметь соображение как это делать для локального профайла и для клоуд. Вцелом скилс хороший если хотя бы понимать как там абстрактный уровень устроен.

К слову сказать pivotal.io дает бесплатный хостин на 90 дней типо
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
Montchik
Уже с Приветом
Posts: 2119
Joined: 27 Dec 1999 10:01
Location: Воронеж -> Naperville, IL

Re: Hosting for Java Web App

Post by Montchik »

Sergunka wrote: 21 Apr 2018 00:47
Montchik wrote: 20 Apr 2018 19:00 Heroku - хочет чтобы ее proprietary API был вставлен в app code. Значить я не смогу легко перескачить на кого-то другого если че. Не ндрда...
CloudFoundry - сразу не понра, похоже что отмирает...
Хероку и Клоуд Фоундри это одно и тоже... просто для справки. С API для Клоуда Фоундри тут довольно просто только надо иметь соображение как это делать для локального профайла и для клоуд. Вцелом скилс хороший если хотя бы понимать как там абстрактный уровень устроен.

К слову сказать pivotal.io дает бесплатный хостин на 90 дней типо
Не знал, спасиб! :fr:

Я какбэ не хочу никакой левый api в прогу совать, особенно api of the hosting company. WTF! :pain1:

Пороюсь в pivotal, спасибо.
User avatar
Montchik
Уже с Приветом
Posts: 2119
Joined: 27 Dec 1999 10:01
Location: Воронеж -> Naperville, IL

Re: Hosting for Java Web App

Post by Montchik »

Мальчик-Одуванчик wrote: 21 Apr 2018 00:40 DigitalOcean
Спасибо, посмотрю и доложу о результатах посмостра. :beer:
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Hosting for Java Web App

Post by Sergunka »

Montchik wrote: 21 Apr 2018 19:44
Sergunka wrote: 21 Apr 2018 00:47
Montchik wrote: 20 Apr 2018 19:00 Heroku - хочет чтобы ее proprietary API был вставлен в app code. Значить я не смогу легко перескачить на кого-то другого если че. Не ндрда...
CloudFoundry - сразу не понра, похоже что отмирает...
Хероку и Клоуд Фоундри это одно и тоже... просто для справки. С API для Клоуда Фоундри тут довольно просто только надо иметь соображение как это делать для локального профайла и для клоуд. Вцелом скилс хороший если хотя бы понимать как там абстрактный уровень устроен.

К слову сказать pivotal.io дает бесплатный хостин на 90 дней типо
Не знал, спасиб! :fr:

Я какбэ не хочу никакой левый api в прогу совать, особенно api of the hosting company. WTF! :pain1:

Пороюсь в pivotal, спасибо.
Я вчера глянул Хероку так же дает трайл. На самом деле все различия по локал и клауд профайлам прописывается на уровне application.yml

И там будет навроде этого сидеть

Code: Select all

---
spring:
  profiles: default
  jpa:
    database: POSTGRESQL
    database-platform: org.hibernate.dialect.PostgreSQLDialect
    show-sql: false
    generate-ddl: true
    hibernate: 
      ddl-auto: create
      use-new-id-generator-mappings: true
      
  datasource:
    test-while-idle: true
    driver-class-name: org.postgresql.Driver
    username: taihuynh
    password:
    url: jdbc:postgresql://localhost:5432/postgres 
    tomcat:
      max-active: 30
      max-idle: 20
      min-idle: 10 
---
spring:
  profiles: cloud
  jpa:
    database: POSTGRESQL
    database-platform: org.hibernate.dialect.PostgreSQLDialect
    show-sql: false
    generate-ddl: true
        
    hibernate: 
      ddl-auto: update
      use-new-id-generator-mappings: true
В общем когда начнешь дай мне знать я пришлю семплы или сам легко найдешь ну или открой новый топик.
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
Montchik
Уже с Приветом
Posts: 2119
Joined: 27 Dec 1999 10:01
Location: Воронеж -> Naperville, IL

Re: Hosting for Java Web App

Post by Montchik »

Okay. Thanks!
User avatar
Montchik
Уже с Приветом
Posts: 2119
Joined: 27 Dec 1999 10:01
Location: Воронеж -> Naperville, IL

Re: Hosting for Java Web App

Post by Montchik »

Посмотрел DigitalOcean и pivotal.io:

Pivotal похоже spring workshop, я пока не уверен что это мне нада.

DigitalOcean - actually is Iaas, я не хочу возитсья с web server и DB и желаю просто деплоиться на provider's web/app server и использовать provider's db. Насколько я понимаю это называется Platform as a Service or PaaS.

Пока думаю за google cloud App Engine.

Что есть докер?
User avatar
Мальчик-Одуванчик
Уже с Приветом
Posts: 15526
Joined: 27 Sep 2007 22:53

Re: Hosting for Java Web App

Post by Мальчик-Одуванчик »

Montchik wrote: 23 Apr 2018 16:17 Что есть докер?
Изоляция говнокода от среды исполнения.
User avatar
Montchik
Уже с Приветом
Posts: 2119
Joined: 27 Dec 1999 10:01
Location: Воронеж -> Naperville, IL

Re: Hosting for Java Web App

Post by Montchik »

А чем это лучше деплоймента говнокода на провайдеровский application/web server?
User avatar
Boriskin
Уже с Приветом
Posts: 18906
Joined: 30 Aug 2001 09:01
Location: 3rd planet

Re: Hosting for Java Web App

Post by Boriskin »

Montchik wrote: 20 Apr 2018 23:18 Амазон меня напугал предлагаемым количеством сервисов и фичей, и еще их прайсинг какой-то слишком навороченный. Под больших клиентов они затожены похоже.
Не обязательно, но то, что у них один прайс на всех - действительно требует определенного времени чтоб понять, во сколько тебе все встанет если тебе нужно а), й) и з), а не все буквы алфавита. :fr:
Тупизна как Энтропия. Неумолимо растет.
User avatar
Мальчик-Одуванчик
Уже с Приветом
Posts: 15526
Joined: 27 Sep 2007 22:53

Re: Hosting for Java Web App

Post by Мальчик-Одуванчик »

Montchik wrote: 24 Apr 2018 04:10 А чем это лучше деплоймента говнокода на провайдеровский application/web server?
Каждая какашка в своей баночке.
User avatar
Montchik
Уже с Приветом
Posts: 2119
Joined: 27 Dec 1999 10:01
Location: Воронеж -> Naperville, IL

Re: Hosting for Java Web App

Post by Montchik »

Не вижу смысла в накручивании еще одной абстракции между OS/VM и hosted application server. Какашки уже упакованы в web apps. :no:

Google App Engine в итоге разонравился по тем же причинам что и Хероку - proprietary API которая сильно привязывает к хостинг провайдеру.

Google Compute Engine is bare bone, а хочется чтобы web server was provided.

KUBERNETES - это от лукавого. Надо подождать пока пена спадет и будет видно реально ли этот контейнерный подход лучше/удобнее чем PaaS.

Опять начал вкуривать AWS, на этот раз более вдумчиво. Пока нра...
tessob
Уже с Приветом
Posts: 549
Joined: 07 Jan 2016 13:04

Re: Hosting for Java Web App

Post by tessob »

В AWS удобный сервис "деплоить все подряд" - ElasticBeanstalk‎. Можно просто ручками дать ему спрингбутовый джарник и забыть. У меня в продакшене так несколько десятков джарников крутится. Причем, если мало мощщи, то можно в два клика отмасштабировать на n серверов через реверс проксю (Nginx).

Только я так и не понял чем хероку не понравился. У меня там тоже сервисы в продакшене живут. Иногда просто супер-удобно деплоить изменения через интеграцию с гитхабом. Единственное различие с обычным пайплайном - нужно добавить Procfile в корень. Разонравится хероку, можно просто в одну команду собрать джарник на ноуте и затолкать на амазон. Плюс у Хероку HTTPS из коробки и с ним вообще не нужно париться.
User avatar
Montchik
Уже с Приветом
Posts: 2119
Joined: 27 Dec 1999 10:01
Location: Воронеж -> Naperville, IL

Re: Hosting for Java Web App

Post by Montchik »

Мне показалось на минуточку что web app должна использовать heroku specific api для того чтобы ее можно было ранить на heroku hosted Tomcat. Может ошибся, не знаю.
Сечас про еще один "косяк" прочитал - heroku ожидает что web server будет embedded in the application. А что если у меня две web apps and I wanna run them on the same tomcat instance и деплоить независимо друг от друга?
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Hosting for Java Web App

Post by Sergunka »

Montchik wrote: 25 Apr 2018 14:37 Мне показалось на минуточку что web app должна использовать heroku specific api для того чтобы ее можно было ранить на heroku hosted Tomcat. Может ошибся, не знаю.
Сечас про еще один "косяк" прочитал - heroku ожидает что web server будет embedded in the application. А что если у меня две web apps and I wanna run them on the same tomcat instance и деплоить независимо друг от друга?
Архитектура в Клоуд Фоундри заточена под маштабирование микросервисов так, что вполне разумное ограничение
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
Montchik
Уже с Приветом
Posts: 2119
Joined: 27 Dec 1999 10:01
Location: Воронеж -> Naperville, IL

Re: Hosting for Java Web App

Post by Montchik »

Имхо tomcat все-таки более позиционируется как application server и его embedded версия просто дань моде. А для микросервисев лучше пользовать apache httpcomponents framework, а не tomcat.
User avatar
Sergunka
Уже с Приветом
Posts: 34164
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Hosting for Java Web App

Post by Sergunka »

Montchik wrote: 25 Apr 2018 18:18 Имхо tomcat все-таки более позиционируется как application server и его embedded версия просто дань моде. А для микросервисев лучше пользовать apache httpcomponents framework, а не tomcat.
Технически spring boot отличное решение в Cloud Foundry есть некоторые недостатки, но вполне терпимые. Микросервис в концепции Cloud Foundry это несколько другое чем просто компонент - это вполне независимое самостоятельное решение которое легко деплоится, маштабируется, имеет свое секьюрити и тд. Есть довольно много на эту тему рассуждений, что более выгодно монолит или микросервис архитектура... в зависимости от задач понятно и подход. В принципе всех кого пришлось переучивать уже как за три года начинали с монолита и были вполне так счастливы пока не возникли вопросы с маштабируемостью и производительностью... :oops:
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
Montchik
Уже с Приветом
Posts: 2119
Joined: 27 Dec 1999 10:01
Location: Воронеж -> Naperville, IL

Re: Hosting for Java Web App

Post by Montchik »

Понятно, но думаю что мне все-таки лучше пользовать app server. Наверное. Может быть. :-)
User avatar
Vladimir Kr.
Уже с Приветом
Posts: 539
Joined: 24 Mar 2004 07:31
Location: Krasnoyrsk -> -> Chicago

Re: Hosting for Java Web App

Post by Vladimir Kr. »

Микросервис как отдельные приложения, это не только в концепции Cloud Foundry, это у Фаулера. Только не понятно что мешает делать "легко деплоится, маштабируется, имеет свое секьюрити и тд." в модульном монолитике.
Ну кроме того, что разрывание модулей монолитика на независимые приложения (микросервисы) не просто понижает связанность, оно ее убивает. В результате получается отличная спагетти архитектура - мечта джоб секюрити, когда встанут вопросы по совместимости версий написанного зоопарка.
моя родина СССР!
tessob
Уже с Приветом
Posts: 549
Joined: 07 Jan 2016 13:04

Re: Hosting for Java Web App

Post by tessob »

Montchik wrote: 25 Apr 2018 14:37 Мне показалось на минуточку что web app должна использовать heroku specific api для того чтобы ее можно было ранить на heroku hosted Tomcat. Может ошибся, не знаю.
Зачем ранить на их томкате? Можно в спрингбуте сделать джарник с томкатом внутри и он сам себя ранить будет. Это еще и удобно, т.к. можно тестить на локальной машине. Холодный запуск при разумном подходе от 2 до 4 секунд. С девтулом некоторые вещи можно обновлять на лету.
Montchik wrote: 25 Apr 2018 14:37 Сечас про еще один "косяк" прочитал - heroku ожидает что web server будет embedded in the application. А что если у меня две web apps and I wanna run them on the same tomcat instance и деплоить независимо друг от друга?
Это не косяк, это фича! Если вы не любите котов микросервисы, то вы просто не умеете их готовить. ))
Если поведение ваших инстансов должно быть независимо, то возможно вам просто нужно несколько инстансов.

Return to “Вопросы и новости IT”