Strona główna forum Ogólnie o Magento Dyskusje Połączenie z zewnętrzną bazą SQL

Połączenie z zewnętrzną bazą SQL

Na temat Magento - ogólnie...


Posty: 38
Lokalizacja: Dzierżoniów
Gadu-Gadu: 1537638

Czy istnieją moduły umożliwiające połączenie z zewnętrzną bazą SQL ? Przykładowo w firmie działa już jakiś program magazynowy gdzie baza towarów jest trzymana pod Oraclem. Chciałbym mieć możliwość pobierania aktualnej ilości danego towaru z tej bazy.

Połączenie z zewnętrzną bazą SQL

PostTeraz jest 28 mar 2024, o 16:25
Google

Posty: 427
Lokalizacja: Internet


Posty: 1575
Gadu-Gadu: 0

PHP ma bibliotekę oracja to zawsze możesz napisać moduł magento co będzie łączył się z bazą oracja i pobierał sobie dane. Ale uważam to za niezbyt bezpieczne rozwiązanie.
hosting-magento.pl / magentohosting.eu - szybki hosting Magento
https://www.mage24.pl/ - twój sklep Magento 2 w 5 minut


Posty: 38
Lokalizacja: Dzierżoniów
Gadu-Gadu: 1537638

kkkonrad napisał(a):
PHP ma bibliotekę oracja to zawsze możesz napisać moduł magento co będzie łączył się z bazą oracja i pobierał sobie dane.

A znasz jakiś podobny, gotowy moduł żebym mógł sobie podejrzeć jak to zrobić ?
kkkonrad napisał(a):
Ale uważam to za niezbyt bezpieczne rozwiązanie.

Dlaczego ? Moduł jedynie czytałby stany magazynowe.


Posty: 1575
Gadu-Gadu: 0

Nie, nie znam takiego modułu.

Bo jednak musisz ta bazę wystawić na zewnątrz.
hosting-magento.pl / magentohosting.eu - szybki hosting Magento
https://www.mage24.pl/ - twój sklep Magento 2 w 5 minut


Posty: 93
Gadu-Gadu: 4275000

A ja znam bezpieczne rozwiązanie, bo sam jestem takiego autorem :)

Synchronizacja z CDN XL:

Serwer A - serwer z bazą danych MS SQL programu CDN XL.
Serwer B - serwer FTP, apache + MySQL z Magento

Serwer A:
1. zaczytanie danych
2. Zapisanie produktów do pliku we własnym formacie
3. Szyfrowanie pliku
4. przesłanie pliku na serwer B
5. wywołanie skryptu PHP na serwerze B

Serwer B:
6. deszyfracja
7. aktualizacja bazy
8. Przesłanie raportu na serwer A.

Jeżeli są jakieś luki w tym rozumowaniu proszę o wskazanie ich.


Posty: 38
Lokalizacja: Dzierżoniów
Gadu-Gadu: 1537638

kasky napisał(a):
Jeżeli są jakieś luki w tym rozumowaniu proszę o wskazanie ich.

Kwestie bezpieczeństwa w moim przypadku są mniej istotne bo u mnie tylko serwer B jest dostępny publicznie a serwer A jest w tej samej podsieci co B a komputery stoją fizycznie obok siebie. Ja to sobie raczej wyobrażam tak:
1. Klient chce wyświetlić zawartość produktów jakiejś kategorii
2. Serwer B (Magento) pyta się serwera A (Oracle) o ilość danych produktów będących na magazynie
3. Serwer A odpowiada
4. Serwer B pokazuje klientowi tylko produkty, które aktualnie są na magazynie.


Posty: 93
Gadu-Gadu: 4275000

<wstyd> nie zrozumiałem tematu.

W takim wypadku rozwiązanie jest bezpieczne.
PHP potrafi się łączyć z Oraclem, więc nie ma problemu.

Będzie trochę zabawy z kodem w wielu miejscach klas Mage_Catalog_Model.

Dużo łatwiej będzie przepisywać ilości w sposób który opisałem we wcześniejszym poście (z wyłączeniem zapisywania do pliku i szyfrowania). Jeżeli komputery są w jednej podsieci - odczytywać ilości z jednej bazy i robić UPDATE na drugiej. Takie rozwiązanie będzie bardzo wydajne, można uruchamiać nawet co minutę i nie obniży wydajności Magento. Do tego dużo łatwiejsze do wykonania niż modyfikacja kodu Magento tak żeby pobierał dane z 2 baz.

Z doświadczenia - skrypt uruchamiany jest co 5 minut w pewnej firmie i nie ma zamieszania z ilościami.


Powrót do Dyskusje