質問 > フロント機能 > dtb_productsを分割した際のphpでの変更作業 |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
zenta |
投稿日時: 2018/4/11 17:38
対応状況: −−−
|
常連 登録日: 2016/10/18 居住地: 投稿: 59 |
dtb_productsを分割した際のphpでの変更作業 いつも大変お世話になっております。どうかご教示願います。
仕様上dtb_productsのカラム数が多くなり過ぎましたので、負荷軽減の為、mysqlでdtb_products_1、dtb_products_2の様に分割し、関連するLC_Page_Products_Detail.php、SC_Helper_DB.php、及びフロント系のphpなどでdb名を変更して試したところ、 dtb_products_1へ新たに作成したコンテンツ(データ挿入は成功)がフロントページでは問題なく表示されるものの、詳細ページを開こうとすると、開けません(エラーログにはdetail関連のエラーが記載されません)。 この様にdtb_productsを分割した場合、特に詳細ページ用にどのphpファイルを変更しなければならないのか、また、mysql上で必要になる作業などもしあれば、ご教示頂けませんでしょうか。 EC-CUBE 2.X系 (データベース) MySQL5.0.77 (WEBサーバ) apache2 (OS) Windows XP (PHP) 5.0.22 |
yuh |
投稿日時: 2018/4/12 13:40
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1818 |
Re: dtb_productsを分割した際のphpでの変更作業 レコード数ではなくカラム数ですか?
いまいちdtb_products_1やdtb_products_2で実装する必要がわかりませんが、SC_ProductのisValidProductId辺りに引っかかってるのだと思います。 SC_Productの中を結構入れ替える必要があり、他にも多々修正箇所が必要かと思いますので、その実装方法ではなく別の手法をとる方がいいかと思います。
|
zenta |
投稿日時: 2018/4/12 17:16
対応状況: −−−
|
常連 登録日: 2016/10/18 居住地: 投稿: 59 |
Re: dtb_productsを分割した際のphpでの変更作業 yuh様、
ご教示頂きまして感謝致します。 仰るとおり、カラム数の増加に伴い、それによって倍増されるデータ数による負荷軽減のためにと考えておりました。 そして、サイト自体を多言語化しようとしているため、dtb_products内に言語別に同じカラムが存在し(例:name_j、name_eの様に)dtb_productsをdtb_products_j、dtb_products_eの様に言語別に分けた方がメンテナンスの面でも良いのかと思い今回の質問でございます。(各dtb_products_x自体は言語の違いはありますが、構造的には同じもの) この様な理由によるdtb_productsの分割の場合、yuh様の言われる別の手法でも適合いたしますでしょうか。その場合、その方法をご教示頂けませんでしょうか。 |
yuh |
投稿日時: 2018/4/12 18:43
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1818 |
Re: dtb_productsを分割した際のphpでの変更作業
|
zenta |
投稿日時: 2018/4/13 3:04
対応状況: −−−
|
常連 登録日: 2016/10/18 居住地: 投稿: 59 |
Re: dtb_productsを分割した際のphpでの変更作業 yuh様、
ご教示頂きまして感謝致します。 今後の使用言語数の増加に伴うdtb_productsへ追加するカラム数の増加、そしてサイトへのウェブユーザーのアクセス増加によって発生するサイトへの負荷等々を考慮し、サイト自体をできるだけ高速化したいと考えての取り組みであり、ご質問でございました。 ここでご教示頂きたいことは、今後継続的にカラム数を増加する(相当数を予定)、あるいはサイトへのアクセス数が増加すると想定した場合(こちらも様々な状況が考えられると思いますが)、 dtb_productsへのカラム数の増加はデフォルトの状態からどれ位まで許容される、つまりサイトスピード(サイト自体の重さ)に影響しないと考えて宜しいのでしょうか。 |
yuh |
投稿日時: 2018/4/13 14:12
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1818 |
Re: dtb_productsを分割した際のphpでの変更作業 カラムが増える分にはそこまで影響は大きくないはずです。
ただ、あまりに増えるのであれば別の設計を行った方がいいとは思います。 どちらかというと、レコード数の増加や不必要なGROUPBYやJOIN周りで大きく速度が低下します。 現状の設計がどのようにやろうとしているのかがわからないのでなんともですが、dtb_products自体を複数持って処理を行うと、変にJOINやUNION等の処理が入るので高速化とは逆方向に向かっている感じはします。 MYSQLの場合 http://eccube.ec-lab.net/products/list.php?category_id=2 調整すればある程度のレコード数でもこのくらいまでは速度を上げられます。
|
zenta |
投稿日時: 2018/4/13 14:55
対応状況: −−−
|
常連 登録日: 2016/10/18 居住地: 投稿: 59 |
Re: dtb_productsを分割した際のphpでの変更作業 yuh様、
リンクのサイトは、そのレコード数にして、目を疑うほどのスピードなのですが、調整はどこでどのようになされているのでしょうか。 何とかご教授願います。 また、言語数をかなり増やした際にとるべき、別の設計とはどのようなものかアドバイスをお願い頂けませんでしょうか。 (dtb_productsの分割は止めにいたします。ご教示感謝いたします。) |
yuh |
投稿日時: 2018/4/13 16:32
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1818 |
Re: dtb_productsを分割した際のphpでの変更作業 元々EC-CUBE2系のクエリ自体あまりINDEXを効かせてクエリを発行していないので、ちゃんとINDEXを使用するようにクエリを組み替えたり、MYSQL独自の速度改善の手法で組んでいます。
PostgresqlはPostgresql用に調整ができます。 設計と言われても、どのような仕様かがはっきりしないため何とも言えないですが、インテグレートパートナーの会社様にご依頼された方がよろしいかと思います。
|
zenta |
投稿日時: 2018/4/13 21:45
対応状況: 解決済
|
常連 登録日: 2016/10/18 居住地: 投稿: 59 |
Re: dtb_productsを分割した際のphpでの変更作業 yuh様
ご多忙の中、ご教授、そして指針を示して頂き感謝致します。 それでは可能な限りいろいろと取り組んで参ろうと存じます。 ありがとうございます。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |