{希哲16年4月7日の開発}{希哲16年4月7日の進捗}{多段化}{進めて}{後縁の対応}{追加取得}{フラグ化}{確定出来る}{余計な検索}{目に見えている}...=}(109)

{希哲16年4月7日10歩 K#F85E/A-E74C-B300}

進捗時限記録中略

全知検索整備方針検討終了

2月23日頃から検索結果改良について本格的に考え始めていたが,「検索属性」を導入し,検索結果多段化進めていくことにした。

現状例えば括弧類自動付加した検索は出来るが,その出来ない括弧付き描出したい場合括弧無し検索して既存輪郭無いことを確認した後,括弧を付け再検索するということがく,とりあえずこの手間無くしたかった全知検索演算子制御任意の括弧類使える好都合ということもあった。

文字数昇順揃えてそれなりの結果になっているのでこれを降順にすればいいかと思ったが,上手く行かない場面多々あるので一時凌ぎ域を出ない

将来的な拡張性考える検索結果多段化好ましい風船輪郭輪括内検索にも応用出来る希哲14年7月30日8歩から輪括内検索輪括内のみにすると使いにくいという理由中途半端な状態になっていたが,優先表示解決出来ることに気付いた

整数値揃え兼ねた役割を与え,これを「検索属性」として利用出来るようにする。

ここまでは良いが,効率的な実装難しい単純に全ての検索パターンUNION結合すればひどいことになるのは目に見えている外充て函数余計な検索省くようにする,挿入更新時に確定出来る情報フラグ化しておくといったことに加えて後縁での出力最低限にして前縁追加取得するといった工夫必要になるかもしれない。

いずれにせよ後縁の対応進めて問題ないだろう。設計方針さえ固まれば最適化どうとでもなる

=}
{出力する}{漠然と}{こまごまとした問題}{キーボード操作}{簡潔な表現}{ダブルクリック操作}{意味が分かりにくかった}{誘導効果}{見えやすくなった}{戻り方}...=}(99)

{希哲16年3月31日の開発 K#F85E/A-E74C-FB1F}

こまごまとした問題片付けた


就寝前閲覧専用模動に関して閃きがあり,また脳爆発始まってしまった

漠然と中景部角丸周辺ボタンとして使えそうだとは思っていたが,これで吹き描き長方形にして前後景部し,さらに中景輪符波括弧角括弧変えれば吹き描き意味ともデラングとも調和する詳細はまだ練る必要があるが,かなりの有力案になりそうだ。

{開発}{開発記録}{デライト}{ファーストビュー}{widgets.js}{希哲15年9月5日}{選択的読み込み}{気になっていた}{外部スクリプト}{描画過程}...=}(22)

{希哲15年9月5日の開発 K#F85E/A-E74C-7A0B}

外部スクリプト選択的読み込みに関する交度整理

ついでに,埋め込みツイートも同様に後縁から出力させるようにした。

widgets.js選択的読み込みスクリプトで行っていたため,描画過程露出しているのが気になっていた。これにより解消するかと思ったが,気休め程度に改善したような気はするものの,やはり描画過程は見える。

ただ,公式ページも含めてどこもそんなものなので,割り切ることにした。デライトの場合はファーストビューに入りやすいせいで気になるのかもしれない。

未出振るい

=}
{開発}{開発記録}{付徴}{デライト}{WebP 統一}{大きかった}{非対応舞覧}{減らしたかった}{性能低下}{高負荷時}...=}(98)

{希哲15年9月3日の開発 K#F85E/A-E74C-339B}

気になっていたデライト高速化に関する問題をいくつか片付け出振るいした。結果として大きな体感表示速度向上が見られた。

離立備立デバッグ備立切り分け

やや混乱していた kn cpl などを整理しながら,離立備立デバッグ備立切り分けられるようにした。5月デバッグ出力整備デバッグ出力録出力切り分けておいたことも奏功し,作業円滑進んだ

これまで,本番環境でも deln.fcgilibxtdxpo.Pgデバッグ出力無効化していなかった。特に大きな負荷になる要素ではないが,高負荷時性能低下要因極力減らしたかった

精神衛生的な面でも効果が大きかった。長い実験段階を終え,一つの製品として完成に向かうデライト象徴する出来事のような気がして嬉しかった

デライトの WebP 対応

一般用者自我アイコンWebP 化完了し,添付画像を除き,現時点で出来るデライトの WebP 対応完了した。

添付画像仕様再検討

先月31日12歩ではすっかり忘れていたが,互換性問題があるため,当面は元画像WebP共存させておくことにした。特に,Safari対応遅かったため,まだ WebP への統一時期尚早だろう。

非対応舞覧市影小さく,デライトにおける譜類添付機能もそれほど本質的付徴ではないため,割り切って無視出来なくもないかとも考えた。いずれにせよ,気になるのはストレージ容量なので,それが問題になるまでは様子見することにした。

外部スクリプト選択的読み込み

輪郭を含むページ無条件読み込んでいた KaTeXhighlight.js を,必要場合だけ後縁出力させるようにした。

体感表示速度への影響はこれが一番大きかった

交度記法における言語管理にも応用出来る。

{デラング}{進捗記録}{交度}{デライト}{`whr_kw()`}{希哲15年8月23日の開発}{検索語変換}{どうとでもなる}{条件次第}{OR 検索}...=}(70)

{希哲15年8月23日7歩 K#F85E/A-E74C-ECC6}

全知検索整備についての検討終了

全文検索にはとりあえず pg_bigm採用しておくことにした。知名検索でも中間一致検索性能課題だったので,これも解決出来そうだ。後方一致検索に関しては,PostgreSQL 9.1 から reverse()組み込み函数として提供されるようになっているので問題ないだろう。

後縁実装どうとでもなるが,難しいのは用合いだ。全知検索窓をこれ以上ごちゃごちゃさせたくないので,まずは検索演算子として各種機能実装したい。これに関しても,だいぶまとまってきた

カンマAND 検索に使うという構想があったが,& ボタンとの兼ね合いもあるので,まずは無難&AND で AND 検索,|OROR 検索対応することにした。除外検索条件次第- を使えるようにしてもいいだろう。

部分一致検索については,省略記号 ...ダッシュ記法応用した ---対応する。

描写検索については,基本的には昨年7月27日3歩方針踏襲し,末尾に ?? を加える形で対応することにした。デラングとの兼ね合い検索寸片をどうするかという課題は残るが,デライトではそれほど多用するものではないので,まずは普通に引っかかるだけで十分だろう。

一つの可能性として,検索ボタンダブルクリックダブルクリック検索対象切り替える機能があってもいいかもしれない。

いずれにせよ,まずは既存の検索語変換交度whr_kw()まとめる作業から始めることになるだろう。

=}
{進捗記録}{@Tw}{希哲15年6月17日の進捗時限}{希哲15年6月17日の進捗}{希哲15年6月17日}{埋め込み部区実装}{埋め込み記法}{blockquote.twitter-tweet}{ツイートの埋め込み}{CORS}...=}(28)

{希哲15年6月17日16歩 K#F85E/A-E74C-A343}

デラング整備埋め込み部区実装@Tw 実装

ツイートの埋め込み一段落して終了。

埋め込み記法によるツイート埋め込みは前縁でやるべきかと思ったが,CORS の問題で素直には出来そうになかったので後縁で処理することにした。

JSON ライブラリが必要になったため,以前の調査で見つけていた RapidJSON を仮に使っておくことにした。

後縁からは script 要素を出力しないようにし,@Tw では,公式寸片参考に,blockquote.twitter-tweet発見したら効率的ウィジェットを読み込むようにした。

ツイート埋め込みに関してはとりあえず十分なものが出来た。

=}
{開発}{開発記録}{SySS}{希哲13年}{付徴}{握接}{理腑}{デライト高速化}{希哲15年4月8日の日記}{HTML の肥大化}...=}(104)

{希哲15年4月8日の開発 K#F85E/A-E74C-86B0}

3日の開発から6日間に渡って続いたデライト小理腑をいったん終えた。

結果的には主に装体書整理テンプレート整理だったが,これにより,保守性体感表示速度大幅向上が見られた。


装体書テンプレートは, によるデルン初期実装から長いこと継ぎ足しで使ってきたため,古い記述譜類に埋もれて目的のものが探しにくいといった問題慢性的にあった。分割すべき記述が一つの譜類に詰め込まれている,逆に,一つにまとめておくべき記述が複数の離れた譜類に分散している,といったことがよくあった。今回の小理腑ではこの点が大きく改善した。

テンプレートの方は折に触れて整理してきたからまだマシだったが,装体書の方は適当に分割した譜類に大量の記述が詰め込まれている状態だった。そもそも SySS備立すら適当で,.syss 譜類があっても .scss が無いと換配されないなど,多数の譜類を管理出来る状態では無かった。これを機に備立方法から整備した。

装体書整理は当初,HTML の肥大化を恐れて埋め込み装体書見極めに時間をかけ過ぎてしまっていたが,この日,JavaScript や HTML に gzip 圧縮がかかっていなかったことに気付いた。ちょっとした deln.conf間違いだったが,これをきっかけ吹っ切れ作業捗るようになった。結局,転送量を大幅に削減出来た分,多少の冗長性には目を瞑ることにした。

これら作業の結果として,目的の装体テンプレートにすぐ握接出来るようになり,埋め込み装体書調整等も的確に行えるようになった。


表示速度は,ページにもよるが,DOMContentLoaded までの計測値0.5秒近く短縮した。これに装体適用合理化も加わり,体感表示速度ははっきり向上したのが分かる。溶明動き付けをいったん削除したのも大きいかもしれない。デライト初期実装読み込み中途半端遅さ誤魔化すため0.3秒の溶明を入れていた。

現時点でここまで高速化に繋がったことは思わぬ収穫だった。これまで,「デライト高速化」は後縁最適化中心に考えてきた。後縁最適化余地の大きさと負荷軽減重視していたこともあり,前縁最適化期待重視もしていなかった。

希哲13年前縁改革前縁の重要性は分かっていたつもりだったが,まだ認識が甘かったようだ。これに気付いたことも大きな収穫と言えるだろう。


そもそもスクリプト動的読み込みに使っている @icl() とその周辺整理によって生じた描画乱れ解消のために始めた作業で,あまり多くは期待していなかったが,結果的に大収穫となった。

ただし,10日までに盛り込むつもりだった付徴後回しになり,デライト収益目標達成にどう影響するかは不透明だ。

問題が解消するまで出振るい出来ず,他の作業が出来なくなっていたこともあり,作業項目としてのデライト小理腑はここでいったん完了とすることにした。整理が必要な部分はまだまだ残っているが,ほとんどは漸進的作業出来る部分だ。いま出来る範囲でまとまった時間を使ってやる理腑はこれが限度だろう。

{後縁}

{}