|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|
Несколько серверов в одной программе03.03.2017, 21:20. Показов 3815. Ответов 17
Метки нет (Все метки)
Гуру, подскажите, Spring на такое способен?
Задумка: сервер на :8000 для клиентов (обычный http://) сервер на :9000 для админки и отладки - включается по надобности и может быть легко отрезоано фаерволом внешним сетям сервер с socket.io (обычный сокет) сервер с https:// как закрытое зеркало для 8000, авторизация, закрытые данные, возможно телеграмм бот и отдельные сервисы Основная мысль - все эти "каналы" связаны, и работают с общими данными. Не хочется их "нарезать на программы" и придумывать механизмы общения этих программ.
0
|
|
| 03.03.2017, 21:20 | |
|
Ответы с готовыми решениями:
17
Как прописать 12 if-ов в одной программе ? MVC, несколько моделей на одной view Несколько серверов на одной машине |
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
||
| 04.03.2017, 00:38 [ТС] | ||
|
В РНР можно было общий сайт(папку скриптов) натравить на 2 сайта (http+https). В node тоже вроде в одном скрипте можно много "серверов" поднять разного типа с общими глобальными переменными. В спринге не смог нагуглить... порты менять могу, но только один. А томкэт (в Вашей ссылке) похоже просто выполняет роль переадресатора/фаервола. Ладно... как бы Вы "нарезали" подобную программу на Spring? Чтобы не сильно потерять скорость и функционал. (я так понимаю что придется уже "межпрограмные" протоколы использовать - например обмен json)
0
|
||
|
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
|
||
| 04.03.2017, 01:17 | ||
|
0
|
||
|
4575 / 2772 / 491
Регистрация: 28.04.2012
Сообщений: 8,754
|
||||||
| 04.03.2017, 02:13 | ||||||
|
Добавлено через 2 минуты Не по теме: Вот что бывает, когда PHP/JS-кодеры дорываются до бэк-энда…
0
|
||||||
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|||
| 04.03.2017, 02:44 [ТС] | |||
|
Ну если никак... тогда подскажите какими техниками java проэкты могут "общаться" друг с другом? Что гуглить? И как подобное на сервере выглядит - основной проект и подчиненные или блоки загружаемые списком и "обнаруживающие" друг-дружку? Это делается той-же командой java...jar/war или нужен сервер вроде томкэта? Не по теме:
0
|
|||
|
4575 / 2772 / 491
Регистрация: 28.04.2012
Сообщений: 8,754
|
|||
| 04.03.2017, 03:27 | |||
|
0
|
|||
|
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
|
| 04.03.2017, 09:34 | |
|
Tester64, вы упорно пытаетесь впихнуть в джаву методологии пхп. Не стоит этого делать. На джаве нужно использовать подходы, которые вам написали выше. С одной стороны вы говорите "простой сайт на пару страниц", с другой городите тут какую то несуразную архитетуру.
Для пары сотен пользователей можете в БД хранить вообще что угодно и кеш не использовать. Все эти оптимизации если и будут нужны вам, то позже.
0
|
|
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
||||
| 04.03.2017, 12:43 [ТС] | ||||
|
Ну если никак... тогда подскажите какими техниками java проэкты могут "общаться" друг с другом? Что гуглить? И как подобное на сервере выглядит - основной проект и подчиненные или блоки загружаемые списком и "обнаруживающие" друг-дружку? Это делается той-же командой java...jar/war или нужен сервер вроде томкэта?
0
|
||||
|
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
|
| 04.03.2017, 13:11 | |
|
Tester64, у вас каша в голове. Не нужно вам несколько проетэктов. Нужен только один. Jar это тот же томкэт только встроенный. Если очень хочется мудрить гуглите micro services architecture. Однако еще раз скажу это не для вашего случая.
0
|
|
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
||
| 04.03.2017, 21:41 [ТС] | ||
|
Хочешь заходишь на http хочешь на https. Что-то доступно только на https. Еще мой сервер(сайт) предоставляет сокет сервер для чата и пуш уведомления о новых сообщениях. Добавляешь "рассылку"/"новость" через http/https, а сокет нужным людям шлет сообщение для показа в маленькой иконке в уголке страницы ("непрочитанные новости"). В идеале не один сервер заносит "заказ" в базу, а другой ("сокетный") находит время чтобы их прочитать и разослать а почти мгновенно - через долю секунды - получив прямой приказ от сервера "начни рассылку", а не чтение "заявки". Итог - ныжны сервер http, https и сокет! в идеале запасной http для админки на другом порте. можно 3-4 программы, можно в одной (не знаю как). Если 3 то дожно быть "тесное" общение программ. Это ТОЧНО микросервисы? Пожалуйста не пускайте меня по "ложному следу". Микросервис может быть полноценным веб сервером? а сокет сервером? Нашел кучу статей на тему "стоит или нет использовать микросервисы и как нарезать монолитную программу на сервисы". Но ведь похоже в "монолите" изначально запрещено 2 порта и http+socket.io.
0
|
||
|
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
|
| 04.03.2017, 22:47 | |
|
Я устал пытаться донести до вас информацию. Вы похоже не способны её воспринимать. Хотите делать 3 сервера, делайте хоть 10. Я написал что вам достаточно одного. По сто раз повторять одно и тоже желания нет. Удачи.
0
|
|
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
||
| 04.03.2017, 23:34 [ТС] | ||
|
Может мы говорим на разных терминах??? Сервер - ПРОГРАММА обрабатывающая порт по протоколу, а не отдельный компьютер. Вопрос лишь в том что все это должно быть в одном проекте и хитро настроено или 3 проекта, которые надо как-то связать и запустить одновременно? Или это 3 проекта которые надо собрать в единый jar/war файл? Перечитайте первое сообщение и ответьте на него, а не "пытайтесь доносить информацию". Возможно ли все перечисленное удержать/настроить в ОДНОМ проекте спринга или их надо "нарезать ради надежности и масштабирования". и не надо убеждать меня что сокет мне не нужен! это ТЗ от заказчика! Сокет для чата и пуш уведомлений в открытые страницы о "новостях для текущего клиента" без ежесекундных опросов сервера (на ноде такое писал - успешно работало - теперь надо на спринге).
0
|
||
|
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
||||
| 05.03.2017, 00:45 | ||||
|
Два порта вам точно ненужно. Веб сайты сидят на 80 порту. Админка просто вешается на /admin Тоже самое с http/https. Если вам нужен https, делайте его на весь свой сайт. Всякие там "отрезания" частей сайта (тоже непонятно зачем вам нужно) решаются как писали выше через nginx или apache httpd
1
|
||||
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|||
| 05.03.2017, 02:40 [ТС] | |||
|
Неужели эту задачу на ЧИСТОМ спринге не решить???? Без томкэта или nginx для нарезки доступов и "танцев с бубном" вокруг портов? Ответьте ДА или НЕТ! Чтобы я не тратил недели на то как это все-таки сделать стандартными средствами спринга и не удивлялся что работает "либо-либо"!
0
|
|||
|
1563 / 1041 / 94
Регистрация: 17.04.2009
Сообщений: 2,995
|
|
| 05.03.2017, 10:06 | |
Сообщение было отмечено Tester64 как решение
Решение
Чистый спринг ничего не знает про http/https и порты. Если ты говоришь про spring boot, то так и пиши - а то глаза режет.
Про одновременно: внутри spring boot есть встроенный сервер. Чтобы одновременно был запуск на нескольких портах, надо создать свой листенер. К примеру в пункте 73.9 как поднять два коннектора разом. Веб-сокеты работают через эти же коннекторы.
1
|
|
|
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
||
| 05.03.2017, 10:09 | ||
|
Tester64, хватит истерить уже. Вы по ссылкам ходили которые я давал?
Насчет чистого спринга выше сказали. Спринг это фреймворк а не сервер.
0
|
||
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|||||
| 05.03.2017, 19:10 [ТС] | |||||
|
Думаю хватит! Теперь буду вычитывать... опыт - это дело наживное!!! ВОПРОС ЗАКРЫВАЮ!
0
|
|||||
| 05.03.2017, 19:10 | |
|
Помогаю со студенческими работами здесь
18
Несколько серверов на одной машине Несколько классов в одной программе Несколько функций в одной программе
Подскажите, как сделать несколько итераций в одной программе Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
||||
|
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга,
Ты же видел моря и метели.
Как сменялись короны и стяги,
Как эпохи стрелою летели.
- Этот мир — это крылья и горы,
Снег и пламя, любовь и тревоги,
И бескрайние. . .
|
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1
У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\
А в самом низу файла-профиля. . .
|
PowerShell и онлайн сервисы. Валюта (floatrates.com руб.)
iNNOKENTIY21 11.11.2025
PowerShell функция floatrates-rub
Примеры вызова:
# Указанная валюта 'EUR'
floatrates-rub -Code 'EUR'
# Список имеющихся кодов валют
floatrates-rub -Available
function floatrates-rub {
|
PowerShell и онлайн сервисы. Погода (RP5.ru)
iNNOKENTIY21 11.11.2025
PowerShell функция Get-WeatherRP5rss для получения погоды с сервиса RP5
Примеры вызова
Get-WeatherRP5rss
с указанием id 5484 — Москва (восток, Измайлово) и переносом строки:. . .
|
PowerShell и онлайн сервисы. Погода (wttr)
iNNOKENTIY21 11.11.2025
PowerShell Функция для получения погоды с сервиса wttr
Примеры вызова:
Погода в городе Омск с прогнозом на день, можно изменить прогноз на более дней, для этого надо поменять запрос:. . .
|
|
PowerShell и онлайн сервисы. Валюта (ЦБР)
iNNOKENTIY21 11.11.2025
# Получение курса валют
function cbr (] $Valutes = @('USD', 'EUR', 'CNY')) {
$url = 'https:/ / www. cbr-xml-daily. ru/ daily_json. js'
$data = Invoke-RestMethod -Uri $url
$esc = 27
. . .
|
И решил я переделать этот ноут в машину для распределенных вычислений
Programma_Boinc 09.11.2025
И решил я переделать этот ноут в машину для распределенных вычислений
Всем привет. А вот мой компьютер, переделанный из ноутбука.
Был у меня ноут асус 2011 года. Со временем корпус превратился. . .
|
Мысли в слух
kumehtar 07.11.2025
Заметил среди людей, что по-настоящему верная дружба бывает между теми, с кем нечего делить.
|
Новая зверюга
volvo 07.11.2025
Подарок на Хеллоуин, и теперь у нас кроме Tuxedo Cat есть еще и щенок далматинца:
Хочу еще Симбу взять, очень нравится. . .
|
Инференс ML моделей в Java: TensorFlow, DL4J и DJL
Javaican 05.11.2025
Python захватил мир машинного обучения - это факт. Но когда дело доходит до продакшена, ситуация не так однозначна. Помню проект в крупном банке три года назад: команда data science натренировала. . .
|