Magento Forum

Warenwirtschaft? (war: Die wichtigste Frage:)
 
dmconnector
Jr. Member
 
Avatar
Total Posts:  6
Joined:  2009-02-16
 

Hallo,

mal dazu, warum von den WaWi-Herstellern nichts kommt:
1. Die Anbindung von Magento ist komplexer, als man annimmt. Nur die API Funktionen reichen hier nicht aus.
2. Die Hersteller von Warenwirtschaftssystem sind oftmals auch daran interessiert, Ihre eigenen Shops zu vermarkten.
3. Alleine auf dem deutschen Markt diverse Shopsysteme, welche einen gewissen Marktanteil besitzen. Sofern zu diesen
eine Anbindung geschaffen wird, muss diese auch gepflegt werden, welches wiederum mit Kosten verbunden ist.

Und von den Shop-Herstellern wie Varian können auch keine Anbindungen zu WaWis verlangt werden.
1.  Alleine auf dem deutschen Markt tummeln sich zwischen 50 und 100 Anbietern von Warenwirtschaftssystemen.
2. International bietet z.B. der EINE Hersteller Sage rund 30 verschiedene - zueinander inkompatible - Lösungen an.
In Deutschland alleine mindestens 10: PC-Kaufmann, GS-Auftrag, Classic Line, Office Line, 3 verschiedene Sage bäurer Lösungen,
ERP X3, HWP, Primus ...
3.  Nicht alle WaWis sind für eine Anbindung offen.
4.  Um eine Warenwirtschaft anbinden zu können, sind jeweils spezielle Kenntnisse über diese nötig. Wie ist die Datenbank
aufgebaut? welche Logiken (PK, FK, Trigger etc) stehen dahinter?
5.  Bei einem Update der Warenwirtschaft muss die Shcnittstelle auf Konformität geprüft werden und gegebenenfalls angepasst
werden.

Wichtig ist daher, dass das Shop-System offen für die Anbindung ist . Dieses ist mit der Magento-API
grundsätzlich der Fall.

 
Magento Community Magento Community
Magento Community
Magento Community
 
alex2911
Member
 
Total Posts:  41
Joined:  2007-11-15
 

ich wäre schon froh wenn die API von Magento fehlerfrei und vor allem etwas schneller laufen würde grin
Aber man kann nicht alles haben.

 
Magento Community Magento Community
Magento Community
Magento Community
 
timste
Guru
 
Total Posts:  645
Joined:  2007-12-26
Leipzig
 

ich importiere / update über die API fehlerfrei. welche fehler hast du denn in deiner version (welche?)

zur geschwindigkeit kann ich nur soviel sagen:

je nachdem wieviel rechenkraft dein server hat kann das zwischen 1-10 sekunden pro artikel schwanken.

 
Magento Community Magento Community
Magento Community
Magento Community
 
alex2911
Member
 
Total Posts:  41
Joined:  2007-11-15
 

win2008 64bit 8gb
es ist einfach zu langsam.

 
Magento Community Magento Community
Magento Community
Magento Community
 
timste
Guru
 
Total Posts:  645
Joined:  2007-12-26
Leipzig
 

ubuntu 32bit 2gb pro Artikel 1 sekunde

man muss natürlich auch ein bissl den server anpassen und dem mysql gewisse dinge sagen grin

 
Magento Community Magento Community
Magento Community
Magento Community
 
alex2911
Member
 
Total Posts:  41
Joined:  2007-11-15
 

ein spezialist *kicher*

 
Magento Community Magento Community
Magento Community
Magento Community
 
timste
Guru
 
Total Posts:  645
Joined:  2007-12-26
Leipzig
 

genau wink

 
Magento Community Magento Community
Magento Community
Magento Community
 
alex2911
Member
 
Total Posts:  41
Joined:  2007-11-15
 

dann kauen wir das doch mal durch…

default-character-set=latin1
default-storage-engine=INNODB
read_buffer_size
=64M
read_rnd_buffer_size
=64M
sort_buffer_size
=64M
innodb_additional_mem_pool_size
=128M
innodb_flush_log_at_trx_commit
=1
innodb_log_buffer_size
=128M
innodb_buffer_pool_size
=128M
innodb_log_file_size
=120M
innodb_thread_concurrency
=8
max_connections
=800
old_passwords
=1
max_user_connections
=120
thread_cache_size
=32
thread_stack
=196608
binlog_cache_size
=32768
net_read_timeout
=60
net_retry_count
=20
net_write_timeout
=60
thread_concurrency
=10
open_files_limit
=0
tmp_table_size 
256M
query_cache_size 
128M
query_cache_type 
1
myisam_sort_buffer_size 
128M
max_allowed_packet 
128M
key_buffer 
512M
[client]
port
=3306

aktuell etwa 8 sekunden / seite (shop).
6 sekunden für 2 api-abfragen. (sales_order.list + sales_order.info)

 
Magento Community Magento Community
Magento Community
Magento Community
 
RolandG
Member
 
Total Posts:  75
Joined:  2008-05-16
 

@alex

Was bedeuted bei dir zu langsam? Wenn man täglich bei 10’000 Produkten die Preise anpassen muss, ist natürlich auch 1 Sekunde pro Produkt zu langsam.

 
Magento Community Magento Community
Magento Community
Magento Community
 
RolandG
Member
 
Total Posts:  75
Joined:  2008-05-16
 

query_cache_size = 128M

Habe irgendwo gelesen, dass ein zu hoher query_cache zu Performanceeinbussen führen kann. Hast du mit der Konfig mal ein bisschen rumprobiert? 8 Sekunden finde ich extrem lange.

 
Magento Community Magento Community
Magento Community
Magento Community
 
alex2911
Member
 
Total Posts:  41
Joined:  2007-11-15
 

ja roland - das ist ja das problem.

zumal jtl nicht direkt alle produkte abfragen kann sondern jedesmal ein produkt holt, dazu dann die info abgefragt werden muss, das eine produkt dann aufgenommen wird und dann geht das spiel wieder von vorne los.

beim bestellimport dasselbe spielchen.
zuerst alle bestellungen ausgeben, schnappe eine bestellID, hole, infos dazu (verschiedene adressen-abfragen durchlaufen), setze bestellung auf processing und dann mach mit der nächsten bestellung weiter.

so kommen pro satz schon mal 4-7 api-calls zusammen.
rechnet man nun pro call 4 sekunden, sind das ganz schnell mal 20sek+ pro bestellung bzw. etwa soviel pro produkt.
beim import bin ich noch nicht angelangt - dürfte sich aber ähnlich verhalten. und die attributen hab ich derweil noch garnicht berücksichtigt.

ich glaube, ich steige auf mysql-queries um :(

 
Magento Community Magento Community
Magento Community
Magento Community
 
timste
Guru
 
Total Posts:  645
Joined:  2007-12-26
Leipzig
 

meine config ist ähnlich.

ich vermute mal das dein WS2008 nicht so der optimale host für die DB ist, habe es auch schon auf windows gehabt und ähnliche ergebnisse gehabt.
nach dem umzug auf ubuntu war es dann im genannten faktor schneller.

ich habe momentan etwas über 12000 produkte die updates erhalten, vorrangig im preis bzw. verfügbarkeit.

@RolandG

sicherlich ist 1 sekunde viel zuviel, bevor ich mir aber den gesamten shop zerschiesse durch eigene sql-queries mache ich es lieber auf die ruhige art.
so oft werden die preise auch nicht geupdated. der einzigste wichtige wert ist die verfügbarkeit, die wawi ist hier führend.

meiner meinung nach kann keine wawi einen artikel so detailiert wie magento anlegen. das heisst es kann immer nur einen grundimport geben und dann eine weitere händische pflege.

grüße

 
Magento Community Magento Community
Magento Community
Magento Community
 
alex2911
Member
 
Total Posts:  41
Joined:  2007-11-15
 

Ich weiß garnicht ob es jemanden interessiert.

Hier meine Tests:

Zeit1: 2.23198509216
Zeit2: 2.11104297638
Zeit3: 2.04285311699
Durchschnitt: 2.12862706184

Getestet mit:

$time_start microtime(true);
            
$cur_query $proxy->call($sessionId'sales_order.list', array(array('status'=>array('eq'=>'pending')))); 
            
$time_end microtime(true);
            
$time $time_end $time_start;
            echo 
'<br />Zeit1: ' $time;
            
$timeges $time;
            
            
$time_start microtime(true);
            
$cur_query $proxy->call($sessionId'sales_order.list', array(array('status'=>array('eq'=>'pending')))); 
            
$time_end microtime(true);
            
$time $time_end $time_start;
            echo 
'<br />Zeit2: ' $time;
            
$timeges = ($time+$timeges);

            
$time_start microtime(true);
            
$cur_query $proxy->call($sessionId'sales_order.list', array(array('status'=>array('eq'=>'pending')))); 
            
$time_end microtime(true);
            
$time $time_end $time_start;
            echo 
'<br />Zeit3: ' $time;
            
$timeges = ($time+$timeges);
            echo 
'<br />Durchschnitt: ' . ($timeges/3);

($sessionId schon (einmalig) gesetzt)

mysql-settings:

default-character-set=latin1
default-storage-engine=INNODB
read_buffer_size=256M
read_rnd_buffer_size=256M
sort_buffer_size=256M
innodb_additional_mem_pool_size=256M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=256M
innodb_buffer_pool_size=256M
innodb_log_file_size=120M
innodb_thread_concurrency=8
max_connections=800
old_passwords=1
max_user_connections=120
thread_cache_size=64
thread_stack=196608
binlog_cache_size=32768
net_read_timeout=60
net_retry_count=20
net_write_timeout=60
thread_concurrency=10
open_files_limit=0
tmp_table_size = 256M
query_cache_size = 64M
query_cache_type = 1
myisam_sort_buffer_size = 256M
max_allowed_packet = 256M
key_buffer = 256M

(port und pfad hab ich ausgelassen....)

 
Magento Community Magento Community
Magento Community
Magento Community
 
RolandG
Member
 
Total Posts:  75
Joined:  2008-05-16
 

Betreffend den eigenen sql-Queries hast du sicher recht. Der Weg über die API ist nicht nur sicherer, sondern dürfte für die Zukunft auch den Wartungsaufwand der Schnittstelle tiefer halten als über eigene Queries. Darf man wissen was für ein Wawi du verwendest?

 
Magento Community Magento Community
Magento Community
Magento Community
 
alex2911
Member
 
Total Posts:  41
Joined:  2007-11-15
 

da stimme ich zu.

nur: wenns nicht anders geht :-(

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top