![]() |
|
1С:Предприятие
:: 1С:Предприятие 8 общая
|
|
| ||
NegroNegro 02.03.21 - 13:27 | Уважаемые участники, прошу помощи.
Вероятно, руки кривые и по сему - траблы. Хотел для обслуги файловой базы запустить несколько экземпляров апача 2.4 под 2012-м серваком. Не гут ведь строить клиентов в очередь к однопоточной компоненте, - лучше запустить сразу несколько копий апача на разных портах. Да? Скачал с apachehaus.com архив 2.4-го, распаковал в две разные папки, подправил в каждой в конфиге имя сервера и порт на listen: Define SRVROOT "/Apache241" Listen 8001 Define SRVROOT "/Apache242" Listen 8002 Закинул в сервисы: httpd.exe -k install -n "apache1" -f "C:\Apache241\conf\httpd.conf" httpd.exe -k install -n "apache2" -f "C:\Apache242\conf\httpd.conf" В сервисах-то они оба видны, но запускается за раз лишь любой один. Второй дает ошибку завершения с кодом 1. Подскажите, плиз, где косяк, или что в принципе упустил (впервые курю)... А может, это фича 2.4-го, и теперь вообще нельзя несколько экземпляров запустить? --------------------------------- - на оф.сайте нашел вот что (https://httpd.apache.org/docs/2.4/platform/windows.html): Because Apache for Windows is multithreaded, it does not use a separate process for each request, as Apache can on Unix. Instead there are usually only two Apache processes running: a parent process, and a child which handles the requests. Within the child process each request is handled by a separate thread. ..... Warning: The server configuration file is reread when a new child process is started. If you have modified httpd.conf, the new child may not start or you may receive unexpected results. ThreadsPerChild: This directive is new. It tells the server how many threads it should use. This is the maximum number of connections the server can handle at once, so be sure to set this number high enough for your site if you get a lot of hits. The recommended default is ThreadsPerChild 150, but this must be adjusted to reflect the greatest anticipated number of simultaneous connections to accept. | ||
NegroNegro 1 - 02.03.21 - 14:43 | Некоторое уточнениеСделал старт из командной строки и получил такое: (OS 10048)Only one usage of each socket address (protocol/network address/port) is normally permitted. : AH00072: make_socd: could not bind to address [::]:443 (OS 10048)Only one usage of each socket address (protocol/network address/port) is normally permitted. : AH00072: make_socd: could not bind to address 0.0.0.0:443 | ||
NegroNegro 2 - 02.03.21 - 14:51 | Полазил по конфигам и в паре файлов кое что нашел
В httpd-ssl.conf -
Define SSL_PORT 443
В httpd-ahssl.conf - Listen 443 https <VirtualHost _default_:443> SSLEngine on ServerName localhost:443 SSLCertificateFile "${SRVROOT}/conf/ssl/server.crt" SSLCertificateKeyFile "${SRVROOT}/conf/ssl/server.key" DocumentRoot "${SRVROOT}/htdocs"# DocumentRoot access handled globally in httpd.conf CustomLog "${SRVROOT}/logs/ssl_request.log" \ "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" <Directory "${SRVROOT}/htdocs">Options Indexes Includes FollowSymLinks AllowOverride AuthConfig Limit FileInfo Require all granted </Directory> </virtualhost> | ||
ДедМорроз 3 - 02.03.21 - 14:52 | У тебя порт 443 для шифрованного соединения один и тот же на нескольких apache вот они за него и подрались. | ||
NegroNegro 4 - 02.03.21 - 14:53 | Именно!
И я сейчас его заменил на 8003 во втором экземпляре. И 2.4 стартанул | ||
NegroNegro 5 - 02.03.21 - 14:54 | Вопрос лишь, - не стремно ли менять порт шифрования... | ||
Garykom 6 - 02.03.21 - 15:25 | (5) не стремно а нужно! ну или отруби его совсем | ||
Garykom 7 - 02.03.21 - 15:26 | Кста ssl может быть на любом порту, это просто умолчания что без ssl|http на 80 а с ssl|https на 443 | ||
NegroNegro 8 - 02.03.21 - 15:49 | (6) Так и поступил. Продолжаю танцы с бубном) Перешел к публикации базы. Чувствую, еще сюрпризы на подходе | ||
ДедМорроз 9 - 02.03.21 - 15:50 | Что-то мне подсказывает,что можно в одного индейца одну и ту же базу в разные каталоги опубликовать. | ||
NegroNegro 10 - 02.03.21 - 16:00 | (9) Ну я так и делаю. Скопировал уже полностью с публикацией апач, только в конфигах изменил порт, имя сервера и порт шифрования. Запустил два экземпляра (четыре пера в процессах - дочерний процесс у каждого) и сейчас предвкушаю облом какой-нибудь | ||
NegroNegro 11 - 02.03.21 - 16:03 | |||
Garykom 12 - 02.03.21 - 16:05 | (9) плагин/модуль один будет и в один поток - нет смысла | ||
Garykom 13 - 02.03.21 - 16:07 | (11) Сделай доброе дело наваяй на 1С инсталлятор апача в много потоков ))
Я когда то начал писать (начиная со скачивания последней версии с https://www.apachelounge.com/download/)но забросил Выложить на ИС и срубить немного $m | ||
Garykom 14 - 02.03.21 - 16:08 | (13)+ В смысле внешняя обработка для 1С, которая сама апач скачает, распакует, конфиги пропишет и базу выбранную опубликует | ||
NegroNegro 15 - 02.03.21 - 16:10 | |||
Garykom 16 - 02.03.21 - 16:19 | (15) это если несколько публикаций на одном апаче
вот когда по одной публикации на нескольких апачах все ок | ||
Garykom 17 - 02.03.21 - 16:22 | LoadModule _1cws_module "C:\Program Files\1cv83\8.3.8.2054\bin\wsap24.dll"
Фишка что если умудриться чтобы разные/несколько dll в один апач то все ок будет Но я хз можно ли тупо dll задублить, прописать нескоко раз в конфиг одного апача | ||
NegroNegro 18 - 02.03.21 - 16:22 | По факту замышляется несколько публикаций на нескольких апачах. NxN. Т.е. апачей нужно по числу пользователей. Тут действительно какой-нибудь визард бы не повредил, ты хорошее дело задумал. | ||
NegroNegro 19 - 02.03.21 - 16:25 | (17) Так глубоко мысль боится лезть). Главное, что каждый экземпляр апача грузит свой плагин и он лезет в базу как обычный юзер. Вот если тут стабильность гарантирована, то зашебись. | ||
Garykom 20 - 02.03.21 - 16:26 | (17) ну теоретически можно взять мануал https://habr.com/ru/post/50909/
далее написать свою обертку "wsap24.dll" которая будет юзать несколько родных wsap24.dll | ||
NegroNegro 21 - 02.03.21 - 16:57 | Да, еще нюанс (если верно воспринял). Вот так нельзя
httpd.exe -k install -n "apache1" -f "C:\Apache241\conf\httpd.conf"
Нужно (для первого экземпляра апача, где будут созданы все публикации) исключительно так:
httpd.exe -k install -n "Apache 2.4" -f "C:\Apache241\conf\httpd.conf" Ибо 1с ищет апач в списке сервисов по имени и если не находит, то не выдает в публикаторе вообще апачевскую опцию. Дальше уже можно копировать папки, меняя порты, имена сервера и еще доп.вхождения папок в конфигах. А VRD, вроде бы, можно тупо размножить. И сертификаты. | ||
Garykom 22 - 02.03.21 - 17:22 | (21) таки публикацию можно вручную | ||
NegroNegro 23 - 02.03.21 - 17:51 | (22) Чем лучше, тем проще.
Для себя описал весь процесс так (поправь, если где ошибки или забыл): 1. Распаковываем апач в папку apache241 (пускай так). и в ней: 2. - генерим сертификат и прописываем в конфиг ссл. 3. - меняем в конфиге порты - 80 на 8001, 443 на 80N1 и сервер на apache241 4. - стартуем сервис (с именем"Apache 2.4"/дефолтно) 5. - делаем все нужные публикации 6. Размножаем папку, автозаменяя на 800i, 80Ni apache24i в конфигах.7. Ну и батники делаем для установки, старта, стопорения по типу httpd.exe -k install -n "Apache 2.4" -f "C:\Apache241\conf\httpd.conf" {httpd.exe -k install -n "Apache 2.4i" -f "C:\Apache24i\conf\httpd.conf"} Все, вроде. Пусть будет памятка... | ||
NegroNegro 24 - 02.03.21 - 17:54 | С портами "регуляризация" для удобства, если скрипт писать... | ||
Garykom 25 - 02.03.21 - 18:00 | |||
NegroNegro 26 - 02.03.21 - 18:01 | (25) Безусловно. Но поскольку он небольшой весьма, мне лично удобно просто отдельные как бы полностью автономные папки держать. | ||
Йохохо 27 - 02.03.21 - 18:33 | (23) откуда предубеждение что имя должно быть коротким в угоду читаемости? + я за с: сразу метко кидаю ссаным тапком + нотепад++ так чудесно меняет всё в пачке ххх.конф + при публикации есть кнопка сохранить, используя опубликовать вы просто боитесь отбросить убогий костыль | ||
NegroNegro 28 - 02.03.21 - 18:48 | (27) Какое имя?) | ||
Aleksey 29 - 02.03.21 - 19:17 | А что это уже не работает? http://catalog.mista.ru/public/239498/ | ||
NegroNegro 30 - 02.03.21 - 19:24 | Не знаю). Вполне возможно, что работает. Хотя, вот, опять же -2.4, ssl - когда это появилось - неведомо, сколько ни гуглил, все только про обычный listen пишут. Желательно же понимать, что и как, чтобы без сторонних инструментов быстро можно было сделать. Рекламное место пустует |
|
Список тем форума |