PHP: var_export olarak Array / e karşı include (un) serialize vs json_ (tr | de) kodu

1 Cevap php

Bir dosyayı kullanarak başka bir sunucudan büyük bir dizi transfer var. Bu çok boyutlu, ama oldukça basit bir dizi var. Şimdi ikinci sunucuda benim uygulamasına bu dosyayı almak için, en verimli yol arıyorum. Yani bu soru ilk sunucuda dosya> dizi parçası değil, dizi-> dosya bölüm hakkında.

Tabii ki en çok umut verici görünüyordu 3 alternatifler üzerinde bazı kriterler yaptım. Benim tam kriter veriler:

zaman:

  • şunları içerir: 0,338 ...
  • unserialize: 0.180 ...
  • json_decode: 0.134...

tepe bellek kullanımı:

  • şunları içerir: 384374,64
  • unserialize: 201377.28
  • json_decode: 219.528,08

dosya boyutu:

  • şunları içerir: 3135 kB
  • unserialize: 3142 kB
  • json_decode: 1838 kB

Tepe bellek kullanımı benim küçük endişe ve hatta orada json oldukça iyi olduğunu çünkü, json_decode gitmek için yol olduğunu düşünüyorum. Ama json hızı ve dosya boyutu sadece kayalar. Ben bu hızlı olmasını hiç düşünmemiştim woul.

Herhangi bir itiraz ya da başka öneriler?

1 Cevap

Kudos to Jan for 1) actually trying out different methods 2) sharing the results

Bilgi bankası geniş bir dizide depolanan whwew Bir süre önce, ben bir AI sistemi üzerinde çalışıyordu. Ben veritabanı kayıtları (yerel mysql, yaklaşık 30.000 satır) gelen tüm diziyi yeniden yerine bir dosyadan dizi nesneleştirmek hızlı büyüklükte bir sipariş bulundu.

(Bu da daha sonra sadece seçici onu daha da hızlandırmıştır hangi bilgi ağacının ilgili bölümlerini yüklemek için kod değiştirmeyi başardı anlamına geliyordu).

HTH

C.