ನಾವು Linux ನಲ್ಲಿ ಡೇಟಾಬೇಸ್ ಮತ್ತು ವೆಬ್ ಸೇವೆಗಳ ಪ್ರಕಟಣೆಯೊಂದಿಗೆ 1c ಸರ್ವರ್ ಅನ್ನು ಹೆಚ್ಚಿಸುತ್ತೇವೆ

ನಾವು Linux ನಲ್ಲಿ ಡೇಟಾಬೇಸ್ ಮತ್ತು ವೆಬ್ ಸೇವೆಗಳ ಪ್ರಕಟಣೆಯೊಂದಿಗೆ 1c ಸರ್ವರ್ ಅನ್ನು ಹೆಚ್ಚಿಸುತ್ತೇವೆ

ವೆಬ್ ಸೇವೆಗಳ ಪ್ರಕಟಣೆಯೊಂದಿಗೆ ಲಿನಕ್ಸ್ ಡೆಬಿಯನ್ 1 ನಲ್ಲಿ 9 ಸಿ ಸರ್ವರ್ ಅನ್ನು ಹೇಗೆ ಹೆಚ್ಚಿಸುವುದು ಎಂದು ಇಂದು ನಾನು ನಿಮಗೆ ಹೇಳಲು ಬಯಸುತ್ತೇನೆ.

ವೆಬ್ ಸೇವೆಗಳು 1c ಎಂದರೇನು?

ವೆಬ್ ಸೇವೆಗಳು ಇತರ ಮಾಹಿತಿ ವ್ಯವಸ್ಥೆಗಳೊಂದಿಗೆ ಏಕೀಕರಣಕ್ಕಾಗಿ ಬಳಸಲಾಗುವ ವೇದಿಕೆ ಕಾರ್ಯವಿಧಾನಗಳಲ್ಲಿ ಒಂದಾಗಿದೆ. ಇದು SOA (ಸೇವಾ-ಆಧಾರಿತ ಆರ್ಕಿಟೆಕ್ಚರ್) ಅನ್ನು ಬೆಂಬಲಿಸುವ ಸಾಧನವಾಗಿದೆ - ಸೇವೆ-ಆಧಾರಿತ ವಾಸ್ತುಶಿಲ್ಪ, ಇದು ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ಮತ್ತು ಮಾಹಿತಿ ವ್ಯವಸ್ಥೆಗಳನ್ನು ಸಂಯೋಜಿಸಲು ಆಧುನಿಕ ಮಾನದಂಡವಾಗಿದೆ. ವಾಸ್ತವವಾಗಿ, ಇದು ಡೇಟಾದೊಂದಿಗೆ html ಪುಟವನ್ನು ರಚಿಸಲು ಒಂದು ಅವಕಾಶವಾಗಿದೆ, ನಂತರ ಅದನ್ನು ಯಾವುದೇ ಇತರ ಅಪ್ಲಿಕೇಶನ್‌ನಿಂದ ಪ್ರವೇಶಿಸಬಹುದು ಮತ್ತು ಮರುಪಡೆಯಬಹುದು.

ಸಾಧಕ - ತ್ವರಿತವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ (ಸಾಕಷ್ಟು ದೊಡ್ಡ ಪ್ರಮಾಣದ ಡೇಟಾದೊಂದಿಗೆ), ತುಲನಾತ್ಮಕವಾಗಿ ಅನುಕೂಲಕರವಾಗಿದೆ.

ಕಾನ್ಸ್ - ನಿಮ್ಮ ಡೇಟಾಬೇಸ್‌ಗಾಗಿ ವೆಬ್ ಸೇವೆಯನ್ನು ಬರೆಯುವಾಗ ನಿಮ್ಮ 1c ಪ್ರೋಗ್ರಾಮರ್ ನಿಮ್ಮ ಮೇಲೆ ಗೊಣಗುತ್ತಾರೆ. ಬರವಣಿಗೆಯಲ್ಲಿ ವಿಷಯವು ತುಂಬಾ ವಿಶಿಷ್ಟವಾಗಿದೆ.

ಹೇಗೆ ಬರೆಯಬೇಕೆಂದು ನಾನು ನಿಮಗೆ ಹೇಳುವುದಿಲ್ಲ ವೆಬ್ ಸೇವೆ... ಸರ್ವರ್ ಕನ್ಸೋಲ್‌ನಿಂದ ಲಿನಕ್ಸ್‌ನಲ್ಲಿ ಅದನ್ನು ಹೇಗೆ ಪ್ರಕಟಿಸಬೇಕು ಎಂದು ನಾನು ನಿಮಗೆ ಹೇಳುತ್ತೇನೆ, ಹಾಗೆಯೇ ಲಿನಕ್ಸ್‌ನಲ್ಲಿ 1 ಸಿ ಸರ್ವರ್ ಅನ್ನು ಸ್ಥಾಪಿಸುವ ಬಗ್ಗೆ ಸ್ವಲ್ಪ.

ಆದ್ದರಿಂದ, ನಾವು debian 9 netinst ಅನ್ನು ಹೊಂದಿದ್ದೇವೆ, ಪ್ರಾರಂಭಿಸೋಣ:

PostgresPro ಅನ್ನು ಸ್ಥಾಪಿಸಿ (ಇದು ಉಚಿತವಲ್ಲ ಮತ್ತು ಸಾಧ್ಯತೆಗಳೊಂದಿಗೆ ಪರಿಚಿತತೆಯ ಭಾಗವಾಗಿ ಮಾತ್ರ ವಿತರಿಸಲಾಗುತ್ತದೆ ಎಂಬುದನ್ನು ದಯವಿಟ್ಟು ಗಮನಿಸಿ):

# apt-get update -y

# apt-get install -y wget gnupg2 || apt-get install -y gnupg

# wget -O - http://repo.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO | apt-key add -

# echo deb http://repo.postgrespro.ru/pgpro-archive/pgpro-11.4.1/debian stretch main > /etc/apt/sources.list.d/postgrespro-std.list

# apt-get update -y
# apt-get install -y postgrespro-std-11-server
# /opt/pgpro/std-11/bin/pg-setup initdb
# /opt/pgpro/std-11/bin/pg-setup service enable
# service postgrespro-std-11 start
# su - postgres
# /opt/pgpro/std-11/bin/psql -U postgres -c "alter user postgres with password 'ВашПароль';"

ಎಲ್ಲಾ ವಿಳಾಸಗಳನ್ನು ಕೇಳಲು postgresql ಗೆ ಹೇಳೋಣ ಮತ್ತು ಕೇವಲ ಲೋಕಲ್ ಹೋಸ್ಟ್ ಅಲ್ಲ

# nano /var/lib/pgpro/std-11/data/postgresql.conf

ಕಾಮೆಂಟ್ ಮಾಡಬೇಡಿ ಮತ್ತು ಕೇಳಲು ಯಾವ ವಿಳಾಸಗಳನ್ನು ಬದಲಾಯಿಸಿ:

...
#listen_addresses = 'ಸ್ಥಳೀಯ ಹೋಸ್ಟ್'
...

ಮೇಲೆ

...
ಆಲಿಸಿ_ವಿಳಾಸಗಳು = '*'
...

ಮುಂದೆ, ನಮ್ಮ ನೆಟ್‌ವರ್ಕ್‌ನಿಂದ ಬಳಕೆದಾರರನ್ನು ಲಾಗ್ ಇನ್ ಮಾಡಲು ಅನುಮತಿಸೋಣ

# nano /var/lib/pgpro/std-11/data/pg_hba.conf

ಬದಲಾಯಿಸೋಣ:

# IPv4 ಸ್ಥಳೀಯ ಸಂಪರ್ಕಗಳು:
ಎಲ್ಲಾ 127.0.0.1/32 md5 ಅನ್ನು ಹೋಸ್ಟ್ ಮಾಡಿ

ಮೇಲೆ

ಎಲ್ಲಾ 192.168.188.0/24 md5 ಅನ್ನು ಹೋಸ್ಟ್ ಮಾಡಿ
ಎಲ್ಲಾ 127.0.0.1/32 md5 ಅನ್ನು ಹೋಸ್ಟ್ ಮಾಡಿ

ನೀವು 1 ಸೆಗಾಗಿ ವಿವಿಧ ಪೋಸ್ಟ್‌ಗ್ರೆಸ್ ಸ್ಥಾಪನೆಗಳ ಕುರಿತು ಇನ್ನಷ್ಟು ಓದಬಹುದು ಇಲ್ಲಿ.

ಮುಂದೆ ನಾವು 1s ಸರ್ವರ್ ಅನ್ನು ಹಾಕುತ್ತೇವೆ.

1c ಸೈಟ್‌ನಿಂದ ಡೌನ್‌ಲೋಡ್ ಮಾಡಿದ ಆರ್ಕೈವ್ ಅನ್ನು ಸರ್ವರ್‌ಗೆ ಅಪ್‌ಲೋಡ್ ಮಾಡಿ (ನನ್ನ ಸಂದರ್ಭದಲ್ಲಿ, deb64_8_3_15_1534.tar.gz)


# tar -xzf deb64_8_3_15_1534.tar.gz

# dpkg -i *.deb

ಇನ್ನೂ ಒಂದೆರಡು ಸಣ್ಣ ವಿಷಯಗಳು:

# apt install imagemagick unixodbc libgsf-bin

ಈಗ Apache2 ಅನ್ನು ಸ್ಥಾಪಿಸೋಣ

# apt install apache2

ಆಡಳಿತ ಕನ್ಸೋಲ್ ಮೂಲಕ ಅಥವಾ 1c ಕ್ಲೈಂಟ್ ಮೂಲಕ, ನಾವು ಡೇಟಾಬೇಸ್ ಅನ್ನು ರಚಿಸುತ್ತೇವೆ ಮತ್ತು ನಮ್ಮ ಕಾನ್ಫಿಗರೇಶನ್ ಅನ್ನು ಭರ್ತಿ ಮಾಡುತ್ತೇವೆ ...

ಈಗ ನಾವು ಡೇಟಾಬೇಸ್ ಅನ್ನು ಪ್ರಕಟಿಸುತ್ತೇವೆ:

1 ಸೆಯೊಂದಿಗೆ ಫೋಲ್ಡರ್‌ಗೆ ಹೋಗಿ.

# cd /opt/1C/v8.3/x86_64/

./webinst -publish -apache24 -wsdir Test -dir /var/www/test/ -connstr  "Srvr=10.7.12.108;Ref=test;" -confPath /etc/apache2/apache2.conf

ನಾವು var/www/test/ ಗೆ ಏರುತ್ತೇವೆ ಮತ್ತು ಅಲ್ಲಿ ಕಾಣಿಸಿಕೊಂಡದ್ದನ್ನು ನೋಡುತ್ತೇವೆ.

# cd /var/www/test
# nano default.vrd

«

v8.1c.ru/8.2/virtual-resource-system"
href="http://www.w3.org/2001/XMLSchema">www.w3.org/2001/XMLSchema"
href="http://www.w3.org/2001/XMLSchema-instance">www.w3.org/2001/XMLSchema-instance"
ಆಧಾರ ="/ಪರೀಕ್ಷೆ"
ib="Srvr=192.168.188.150;Ref=Test;">
<standardOdata enable=«false»
reuseSessions="autouse"
sessionMaxAge="20"
poolSize="10"
poolTimeout="5"/>

«

ಇವುಗಳು 1c ವೆಬ್ ಕ್ಲೈಂಟ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸಲು ಅಗತ್ಯವಿರುವ ಸ್ಕೀಮ್‌ಗಳಾಗಿವೆ ... ಈಗ ನೀವು ಬ್ರೌಸರ್‌ನಿಂದ ನಮ್ಮ ಪರೀಕ್ಷಾ ಡೇಟಾಬೇಸ್ ಅನ್ನು "http://ServerAddress/Test" ವಿಳಾಸದಲ್ಲಿ ಪ್ರವೇಶಿಸಬಹುದು (ಕೇಸ್ ಮುಖ್ಯವಾಗಿದೆ! ಇದು ಲಿನಕ್ಸ್ ಆಗಿದೆ) ಅಥವಾ ನಿರ್ದಿಷ್ಟಪಡಿಸಿ ಕ್ಲೈಂಟ್‌ನಲ್ಲಿ "ಬೇಸ್ ಸ್ಥಳ ಪ್ರಕಾರ" ವಿಳಾಸ http://ServerAddress/Test" ಮತ್ತು ಕ್ಲೈಂಟ್ ಪ್ರಕಟಿಸಿದ ಡೇಟಾಬೇಸ್‌ನೊಂದಿಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ.

ಆದರೆ

ಆದರೆ ವೆಬ್ ಸೇವೆಗಳ ಬಗ್ಗೆ ಏನು? (ನನ್ನ ಪರೀಕ್ಷಾ ಸಂರಚನೆಯಲ್ಲಿ ಅವುಗಳಲ್ಲಿ ಎರಡು ಇವೆ: ಅದೇ ಹೆಸರಿನ ಕಂಪನಿಯ wms ಸಿಸ್ಟಮ್‌ನೊಂದಿಗೆ ಲೆಕ್ಕಪತ್ರ ನಿರ್ವಹಣೆ ಮತ್ತು ಟಾಪ್‌ಲಾಗ್ ಏಕೀಕರಣದೊಂದಿಗೆ ಡೇಟಾ ವಿನಿಮಯಕ್ಕಾಗಿ WebBuh).

ಸರಿ, ನಮ್ಮ vrd ಫೈಲ್‌ಗೆ ಒಂದೆರಡು ಸಾಲುಗಳನ್ನು ಸೇರಿಸೋಣ...


v8.1c.ru/8.2/virtual-resource-system"
href="http://www.w3.org/2001/XMLSchema">www.w3.org/2001/XMLSchema"
href="http://www.w3.org/2001/XMLSchema-instance">www.w3.org/2001/XMLSchema-instance"
ಬೇಸ್="/ಟೆಸ್ಟ್‌ವೆಬ್"
ib="Srvr=IP_addres;Ref=TestWebServ">
<standardOdata enable=«false»
reuseSessions="autouse"
sessionMaxAge="20"
poolSize="10"
poolTimeout="5"/>

# Вот тут начинается код который публикует веб-сервисы
<point name="WebBuh" # Имя веб-сервиса в конфигураторе
alias="Web_buh.1cws" # Web_buh.1cws - алиас веб-сервиса в браузере
enable="true" # дальше я думаю строки и так понятны
reuseSessions="autouse"
sessionMaxAge="20"
poolSize="10"
poolTimeout="5"/>
<point name="TopLog" # второй веб сервис
alias="toplog.1cws" # toplog.1cws
enable="true"
reuseSessions="autouse"
sessionMaxAge="20"
poolSize="10"
poolTimeout="5"/>

ಉಳಿಸಿ.

ಮತ್ತು ಈಗ ನಮ್ಮ ವೆಬ್ ಸೇವೆಯು "http://ServerAddress/Test/Web_buh.1cws?" ನಲ್ಲಿ ಲಭ್ಯವಿದೆ.

ನೀವು ಅದನ್ನು ಕೈಯಿಂದ ಏಕೆ ಮಾಡಬೇಕಾಗಿತ್ತು?

ನಮ್ಮ ಸರ್ವರ್ ಗ್ರಾಫಿಕಲ್ ಶೆಲ್ ಇಲ್ಲದೆ ಇರುವುದರಿಂದ, ಅದರ ಮೇಲೆ ಕಾನ್ಫಿಗರೇಟರ್ ಅನ್ನು ಚಲಾಯಿಸಲು ಅದು ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ ಮತ್ತು ಅದರ ಪ್ರಕಾರ, ನಿಯಮಿತ ವಿಧಾನಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಅದನ್ನು ಪ್ರಕಟಿಸಿ. ಕ್ಲೈಂಟ್‌ನಲ್ಲಿ ಸ್ಥಾಪಿಸಲಾದ ರಿಮೋಟ್ ಕಾನ್ಫಿಗರೇಟರ್ ಸರ್ವರ್‌ನಲ್ಲಿ ವೆಬ್ ಸೇವೆಗಳನ್ನು ಪ್ರಕಟಿಸುವುದಿಲ್ಲ. ಆದ್ದರಿಂದ, ಮೇಲೆ ವಿವರಿಸಿದ ಟೆಂಪ್ಲೇಟ್ ಪ್ರಕಾರ ನಾವು ಸಂರಚನೆಯನ್ನು ಹಸ್ತಚಾಲಿತವಾಗಿ ಸಂಪಾದಿಸಬೇಕು.

.vrd ಅನ್ನು ರಚಿಸಲು ಸ್ಕ್ರಿಪ್ಟ್ - ಧನ್ಯವಾದ ಟಿಹೊನ್ವಿ

ಮೂಲ: www.habr.com

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ