Jump to content

Gombidi Bilişim

Members
  • Posts

    17
  • Joined

  • Last visited

About Gombidi Bilişim

  • Birthday 02/23/1984

Contact Methods

Profile Information

  • Location
    ANTALYA
  • Activity
    Developer

Recent Profile Visitors

1,180 profile views

Gombidi Bilişim's Achievements

Newbie

Newbie (1/14)

6

Reputation

  1. Merhabalar, prestashop altyapısı olan firmalarla uzun zamandır çalışmaktayım. Bu konuda forumda bir kaç geliştiricimiz daha var. Talep ederseniz baştan sona site kurulumu, seo çalışmaları, ödeme modülleri, xml yönetiminden sosyal ve grafik tasarımına kadar ilgilenebilecek ekibimiz hali hazırda mevcut. Özel mesaj ile ulaşabilirsiniz.
  2. Bu kısım gerçekten çok ayrıntılı o yüzden daha fazla konu kabalığı olsun istemiyorum. En baştan sona bir vps kurarak prestashop çalıştırın. Başarılı olduğunuzda merak ettiğiniz soruların cevaplarını alacaksınız.
  3. Tabiki merak etmeniz güzel birşey. Büyük firmalar geniş çaplı yük dengeleme (load balancing) metotları kullanıyor. Bakınız
  4. Bulut sunucuların genel mantığı konusunda uzun uzadıya bilgi verebileceğim bir konu başlığı değil burası. Fakat yinede aradığınız cevabı vermeye çalışacağım. Öncelikli konu maliyet. Bulut sunucular tabi yapılacak işe göre düzenlenebilen sunucular olabileceği için ve prestashop ta kendi bulutlarını sadece kullanılacak işlere göre düzenlediği için performans elde edebilirsiniz. İlk başlarda maliyet size düşük gelebilir fakat kullanıcı sayınız arttıkça özellikleri yetmemeye başlayacak. Bu durumda tabi prestashop bulut boş durmuyor, kaynakların yetmediğine dair size mail bilgilendirmeleri yolluyor. Kısacası anlık 250-300 kullanıcının getireceği siparişten sonra maliyetiniz sizin için çok önem arz etmeyecek gibi olsa da kendi imkanlarınız ile kuracağınız sistemlerin ilerleyen safhalarda çok daha düşük bütçeye ihtiyaç duyduklarını fark edeceksiniz. Bir diğer konu ise serbestlik, Google dan, amazondan yada benzeri firmalardan alınabilen "dedicated cloud" yada "virtual dedicated cloud" sistemler olmadığı sürece hiç bir bulut sistemde serbestlik sağlayamazsınız. Hele konu prestashop bulut ise tamamen onun verdiği imkanları ve panelleri kullanmak zorunda kalabilirsiniz. Başlangıçta bir çok elektronik ticaret sitesi için bu çok önem arz etmesede, ilerleyen zamanlarda sunucu içinde özel yazılımlara ("bash scriptler", vb.. ) ihtiyacınız olabilir. Maliyet konusuna bir şey diyemem çok ucuz olmasa da başlangıç için diğer firmalarla arasında uçurum yok. Ayrıca kolayca kurulum yapar destekte alabilirsiniz. Eğer elektronik ticarete yeni başlıyorsanız ve şimdilik maliyet çok önemli değil diyorsanız prestashop bulut sistemini kullanabilirsiniz. Fakat ilerleyen zamanlarda zaten kendiniz tam kontrollü ( bulut teknolojisi olması tabi daha iyi ) bir "dedidated" a yada "cloud dedicated" a geçeceksiniz. Burada bahsettiğim cloud dedicated tabiri biraz karışık geliyor olabilir. Google ve Amazonun hizmetleri bunlara bir örnek. İyi çalışmalar dilerim.
  5. Hello prestashop masters, For example i have a product, that product price is 100$. I give that a discount %20. Now its 80$. But i need a special command to add this product to cart with $50 or specific discount.
  6. Eklemeleriniz ve yorumlarınız için teşekkürler, umarım herkes için faydalı olur.
  7. Yorumunuz için teşekkürler Safa bey. Sizlerinde desteğini bu aşamada göz ardı edemeyiz. Tekrar teşekkürler.
  8. Merhaba arkadaşlar öncelikle hepinize iyi çalışmalar. Bir süredir prestashop kullanıyorum. Yaşadığımız en büyük problemlerden olan performans sorunu hakkında edindiğim tecrübeleri paylaşmak, hatalı tecrübelerim olduysa sizlerin sayesinde bunları düzeltmek, doğru olduğunu ortakça düşündüğüm tecrübelerimin işinize yaramasını sağlamak amacındayım. Forumda bazı konular gördüm, Türkiye sunucuları, yurtdışı sunucuları, bazı modüllerin kullanılmaması hakkında, vs.. İlk olarak değineceğim kısım sunucu bölümü. Eğer anlık istek sayınız en fazla 200 ün altında ve toplam ürün sayınız 1000 den aşağıysa, Türkiyeden bir sunucu kullanabilirsiniz. Fakat firmayı doğru seçmeniz gerekiyor. Size destek vermeleri çok önemli, zira bazı performans ayarları yapmanız yada yaptırmanız gerekebilir. Fakat anlık istek sayınız çok fazla ise merkezi fransa olan ve dünyanın bir çok bölgesinde datacenterları bulunan bir hosting firması önerebilirim. Fiyatları gerçekten çok uygun. Örneğin 128 GB DDR3 ECC ramli 2 adet Intel Xeon E5-2650v2 işlemciye sahip (buda 36 core yapıyor) bir makineyi 200 küsür euro ya (Vat hariç) alabiliyorsunuz. Garanti 500 mbit band veriyorlar. Hatta ani yüklenmeniz olur diye burst seçeneği var belirli bir süre sizi 3 gbit e çıkartıyorlar (bizzat şahit oldum). Türkiyede bu konuda iyi firmalar yok değil, oldukça fazlalar. Fakat fiyat performans derseniz bu firma gerçekten harika. Yurtdışı sunucu kullanmanın avantajları ve dezavantajları. Avantajları: * Türkiyede bant genişliği çok pahalı olduğu için yurtdışı firmalar daha hızlı bir altyapıya daha ucuza sahipler. * Türkiyede bulunabilecek bant genişliği sınırlı, bu yüzden gerçekten dünyanın bir numarası bir sunucunuz bile olsa zaten bağlantı ona çerez gibi gelecektir ve sunucu yükü %25 i görmeden siteniz yavaşlayacaktır. Dezavantajları: * Öncelikle şunu söylemem gerekir, Türkiyede bildiğim çok fazla firma var, ve bu kişiler destek konusunda gece yataklarından kalkıp ilgilenen kişiler, gerçekten dürüst bir satıcı bulduğunuzda ellerinizi ensenize alın sitenizdeki satışı takip edin sadece. Özellikle sunucu yönetimi konusunda orta seviye bir bilgiye sahipseniz (dikkat edin amatör bile değil çünkü google da bile zar zor bulabileceğiniz bazı ayarlar mevcut) Türkiyeden bilindik güvenilir bir yerden almanızda fayda var. Yeterki paranız olsun. Zaten anlık 1000 istek alıyorsanız bunun sermayesi devede kulak kalır. Load balancing yaparlar, cdn konusunda yardımcı olurlar bir şekilde çözerler. Yurtdışında bu konu için iyi dil bilmeniz lazım. "Abi hallediver şunu gözünü seveyim parası neyse verelim" in ingilizcesini kullanan görmedim, varsa aynı samimiyeti alamaz. * Çok tatlı firmalar var co location olarak kullanabileceğiniz. Bir makine alın koyun firmaya işiniz görülsün. -------------------------------------------------------------------------------------------------------------------------------- Bazı bilinmesi gerekenler: Sanıldığı gibi yurtdışı sunucuların seo açısından bir sakıncası bence yok. Çünkü o eskide kaldı. Google sayfanızla alakalı analizlere iki farklı şekilde ulaşıyor. Birinde siz yardımcı oluyorsunuz, diğeride kullanıcıların google üzerinden veya diğer kaynaklardan sitenize ulaşılması üzerine olan bir mantık. Birinci seçenekte google bunu bir java ile yapıyor ve biliyorsunuz ki javascript uygulamaları client bazlı çalışır. İkincisinde de kullanıcıların çerezleri javascript vasıtası ile tutuluyor ve bilgiler google a yollanıyor. Yani her ne kadar aksi söylenirse söylensin, ben henüz google ın sunucu lokasyonunu dikkate aldığını ispatlayamadım. Sunucuyu seçtikten sonra yapılması gereken bazı ayarlar. Diyelim sunucuyu alacağınız yeri seçtiniz. Özellikle kendi sunucusunu kendi kuran arkadaşlar için anlatıyorum. Benim size tavsiyem litespeed kullanmanızdan yana. Zira bütün bencmark testler kendisinin hızını gösteriyor. Aynı zamanda sunucunuza uygun mysql ayarlarını iyi yapmanız gerekiyor bunun için https://tools.percona.com/wizard adresinden yardım alabilirsiniz. Mysql konusunda hızım iyi olacak diye sakın ha tablolalarınızı MYISAM yapmayın. Zira prestashop kullanıyorsanız siz e-ticaret firmasısınız demektir. Ve veri kaybı söz konusu bile olamaz. InnoDB nin kendi için bir tür backup mantığı mevcut. Ve veriler daha stable tutuluyor. join_buffer_size, sort_buffer_size, read_rnd_buffer_size gibi ayarlara pek fazla dokunmayın, bakmayın size tuner scriptlerin verdiği tavsiyelere. Bunlar tamamen kullanıcı başına düşen limitler. Sizin en önemli ayarınız gereken kısım innodb_buffer_pool_size. Bu alan raminizin %60 ını kaplasa iyi olur. Zira sorgularınızın kullanımı bu ayar düşük olduğunda hızlı olsada çok fazla kullanıcıya önceden hazırlıklı olmalısınız. bir sorguya 200 kişiden her birinin 3 er ms de bağlanması güzeldir. Ama bir sorguya 10.000 kişiden her birinin 30 er ms de erişmesi ve sunucunun takılmaması bence daha iyidir. Raminiz varsa dayayın gitsin. Sizlere CDN kullanmanızı tavsiye edeceğim, ha eğer bütçem yeterli değil diyorsanız, bir subdomain açın image lar için, bunun bağlı olduğu klasöre bir ramdisk oluşturup mount edin ( yazma izinlerini unutmayın ). Ufak bir bash script yazıp cronjoblayın ( scriptinizi boota atmayı unutmayın) verileride bununla senkronize edin. Eğer litespeed kullanıyorsanız sadece ramdisk ayarlamanız yeterli çünkü bu konuyu düşünüp ayarını koymuşlar sağolsunlar. Başka bir sistem kullanıyorsanız fotoları ramden vermek sizi çok fazla tatmin edecektir. Mysql datalarınızıda ramdiskde tutabilirsiniz, fakat bu konuda iyi bir bash yazmanız gerekebilir, çünkü bir reboot durumunda veri kaybı yaşarsınız. Bu anlattıklarımı kendisi yapan bazı uygulamalar yok değil. Litespeed alırsanız zaten php ve statik içerikleriniz için gerekli herşeyi yapıyor sağolsun. Fakat mysql diyince iş değişiyor. Bu konudada percona daki bazı uçuk arkadaşlar var. Gerçekten innodb konusunda uzmanlar. http://www.percona.com/blog/2011/04/04/mysql-caching-methods-and-tips/ linki size faydalı olabilir. Gelelim prestashopun performans ayarlarına. Öncelikle smarty ayarlarında kesinlikle derlemeye zorlama işlemi yapmayın her zaman dosyalar değiştiğinde derlensin. Kesin tavsiyem önbelliği (sitenin kodlarında değişiklik yapmıyor yada bir modül denemiyorsanız) açık tutmanızdır. Eğer 3000-4000 den fazla ürününüz varsa cache ayarlarından memcache den başkasını sakın kullanmayın performansınız düşer. Ayrıca nedendir bilmem xcache kullandığımda bazı kullanıcılarım cookie sorunu yaşıyorlar. Denemek isterseniz tutmayayım sizi. CCC diye bir güzellik var ama bu güzellik fazla ürün olan geniş veritabanlarında sıkıntı oluşturabiliyor. Ayrıca extra modül kullanıyorsanız javascriptleri sona taşımak çokta sağlıklı olmayabilir. HTML i küçültmek için prestashop sayfanın kodları bir sıkıntı oluşmaması için mysqle alıyor, sonra bu derlenmiş sayfa kodundaki gereksiz boşlukları, satır atlamalarını temizliyor sonra size cevap veriyor. Yine mysql yine mysql. Bunu kapalı tutun ve mümkünse tpl lerinizdeki gereksiz boşlukları ( zor olmayacaksa satır atlamarınıda) temizleyin. "HTML içindeki javascript i hizada sıkıştırın" seçeneğide aynı mantıkta. Kaç satır javanız varki sıkıştırıyorsunuz Allah aşkına. Yormayın sunucuyu bunlarla. Bunlar yüksek javaya ve html içeriğe sahip tpl ler için konulmuştur. Kısacası "HTML i küçültün" , "HTML içindeki javascript i hizada sıkıştırın" , "JavaScript sonuna taşıyın" bunlar hariç diğer CCC ayarlarını açabilirsiniz. Kullandığınız ve modüller çok önemli Özellikle ürün içerikleriniz uzunsa (300 kelimenin üzerinde), unutmayın ki bunları ürün listelerken mysql den çağırmak tamamen saçmalık. Kodlarda bazı modifikasyonlar yapmanız gerekiyor. Aynı şey kategoriler ve markalar içinde geçerli. Prestashop sağolsun blockcategories modülünde tüm kategori içeriğini * ile çağırıyor, yada tek tek çağırdığı alanlarda cl.description da ekliyor. Yalnızca kategori adı, kök kategorisi, linki ve sırası gereken bir çekme işleminde neden böyle yapmışlar bilmiyorum. Bir bilen varsa yazsın bi zahmet . Kısacası ürün listesi, kategori listesi vs... listesi alanların sadece lazım olan içerik için sql kodu kullanmak hızı arttırıyor. Sepet kurallarınız çoksa cartrule.php için birazcık araştırma yapın. Uygun döküman bulacağınıza eminim. Prestashop bir çok sorgusunda ( bazı yazılımcılar php konusunda uçsada mysqlde tecrübesizler ) where içinde select kullanmış. Tam olarak ne demek istiyorum. Örnek vereyim. Hali hazırda çalışan bir sql scripti: SELECT c.id_parent, c.id_category, cl.name, cl.link_rewrite FROM `tktk_category` c INNER JOIN `tktk_category_lang` cl ON (c.`id_category` = cl.`id_category` AND cl.`id_lang` = 11 AND cl.id_shop = 1 ) INNER JOIN `tktk_category_shop` cs ON (cs.`id_category` = c.`id_category` AND cs.`id_shop` = 1) WHERE (c.`active` = 1 OR c.`id_category` = 2) AND c.`id_category` != 1 AND `level_depth` <= 4 AND nleft >= 4 AND nright <= 1193 AND c.id_category IN ( SELECT id_category FROM `tktk_category_group` WHERE `id_group` IN (1) ) ORDER BY `level_depth` ASC, cs.`position` ASC koyu olarak belirttiğim alan mysql i yormaktan başka bir işe yaramaz. Bunu yerine şu şekilde kullanın: SELECT SQL_NO_CACHE c.id_parent, c.id_category, cl.name, cl.link_rewrite FROM `tktk_category` c INNER JOIN `tktk_category_lang` cl ON (c.`id_category` = cl.`id_category` AND cl.`id_lang` = 11 AND cl.id_shop = 1 ) INNER JOIN `tktk_category_shop` cs ON (cs.`id_category` = c.`id_category` AND cs.`id_shop` = 1) INNER JOIN `tktk_category_group` cg ON (cg.`id_category` = c.`id_category` AND cg.`id_group` IN (1)) WHERE (c.`active` = 1 OR c.`id_category` = 2) AND c.`id_category` <> 1 AND `level_depth` <= 4 AND nleft >= 4 AND nright <= 1193 ORDER BY `level_depth` ASC, cs.`position` ASC Doğru olan kısmı gösterdim. Tabi bu alan debug mode dan örnek verildiği. Kodlar içinde gerekli yerleri dikkate alacağınızı tahmin ediyorum. Ayrıca aradaki farka dikkat ederseniz "!=" yerine "<>" şartını kullandım. Fazla ayrıntısına girmek istemiyorum fakat ikisi arasında performans farkı var. Biri eşitliği kendi içinde listeleyeip bunu terslerken diğeri eşitliği direk süzüyor. Zaman içinde farklı performans değişkenleri daha bulabilirim diye düşünüyorum. Son olarak şunu belirtmek istiyorum. Burada yaşadığım tecrübeler tamamen tarafımdan tespit edilmemiştir. Bu konuda bir kaç büyük ustamın (isimlerini hunharca yayınlamak istemiyorum, bir tanesi freebsd ve squid uzmanı) yardımıda dokundu. Burada verdiğim ayarlarda herhangi bir hata, eksiklik varsa tamamlayabilirsiniz. Kesinlikle alanımda iddialı değilim, fakat bunlar şahsımın elde ettiği ve sonuç aldığı tecrübeler. Sizde aynı sonucu vermez ise bu konuda bir sorumluluk alamam. Vakit ayırıp okuyanlar için çok teşekkürler. Umarım benim için ve sizler için faydalı bir konu olur. Sürç-i lisan ettiysem affola.
  9. Check modules sql commands for installation. I think module has an character issue. if u enable debugmode and display errors on config/defines.inc.php u can see where the error is. If u cant solve. Find this line on your module main php ( for "testmodule" its "testmodule.php") "if (!DB::getInstance()->execute(trim($query))) return false;" some think like that. And remove or close this line. But when u doing this u must manualy run modules sql code with phpmyadmin or something else after or before install module. modules sql files usualy "install.sql" but some this coders add sql code on modules main phps.
  10. Hello my friends; I need something about prestashop webservices, here is my function on order.php public function GetAddressx() { $addressx = new Address($this->id_address_delivery); return $addressx; } and i need to add an array field to orders webservice, i already add needed definitions = 'testaddress' => array('type' => self::TYPE_STRING), and webserviceParameters = 'testaddress' => array('getter' => 'GetAddressx'), if i change my function for single value, it work but i cant get arrays ( like associations or order_rows ) working function = public function GetAddressx() { $addressx = new Address($this->id_address_delivery); return $addressx->address1; }
  11. İlginize çok teşekkür ederim. İyi çalışmalar.
  12. Merhaba arkadaşlar; Tekrar rahatsız ediyorum sizleri. Yakın zamanda sistemimizi prestashop a taşıma işlemini bitireceğiz. Sanal pos için merak ettiğim bir kaç husus var. Daha önce sanal pos kurulumları yaptım fakat hali hazırda çalışan bir siteyi komple taşımadım. Bizim şu anda bulunan sunucularımız farklı (ip leri dahil), sistemi farklı (prestashop değil), elimizde zaten tüm sanal poslarımız için giriş bilgileri mevcut. Prestashop sanal pos modülümüze giriş bilgilerimizi belirledikten sonra banka tarafından, yok efendim ip numaranız değişti, yok efendim kod yapınız değişti gibi problemlere maruz kalır mıyız? Konu ile ilgili tecrübeli arkadaşlardan paylaşım bekliyorum. Teşekkürler.
  13. Rica ederim, biraz yardımım dokunduysa ne mutlu. İyi çalışmalar.
  14. Aslında Prestashop link çakışmasını engellemek için böyle bir önlem almış, gayet güzel. Kaldırmanın mümkün olduğunu farkettim fakat daha sonra oluşabilecek sorunları göz önünde bulundurduğumda mantıklı görmedim. Zaten prestashop ta işlerini .htaccess i yazarak yapıyor. Bu şekilde kendi sorunuma bir çözüm buldum. Aynı sorunu yaşayacak diğer arkadaşlarımız için işlerine yarayabileceğini düşündüğüm çözümümü sunuyorum. .htaccess içerisine : RewriteRule ^(.*),PR-(.*)$ /$1-$2 [L,R=301] bu satır hakkında fazla açıklama yapmaya gerek yok sanırım. Ha birde "ben .html ide silmek istiyorum" diyen olursa : RewriteRule ^(.*).html(.*)$ /$1$2 [L,R=301] Bu iki satırı .htaccess eklerseniz sorununuz çözülecektir. Tabiki bu satırları kendinize göre uyarlamanız gerekecek. Eğer friendly url özelliğiniz açıksa; panelde ilk seo&url sekmesinde güncelleme yaptığınızda, yada yeni bir yazma kuralını panelden yönettiğinizde .htaccess dosyanız değişecektir. Sebebi ise .htaccess in classes/Tools.php tarafından en baştan yazılması. classes/Tools.php içerisine (tavsiyem bu satırın hemen altına) fwrite($write_fd, "RewriteEngine on\n"); fwrite($write_fd, "RewriteRule ^(.*),PR-(.*)$ /$1-$2 [L,R=301]\n"); Bu satırı eklemeniz (yada yazacağınız kural her ne ise ) eklemeniz yeterli olacaktır. İlginize çok teşekkür ederim. Tüm forum ekibine iyi çalışmalar.
×
×
  • Create New...