Skip to main content
  1. Posts/

🎄 自分のブログ・プラットフォームを作る

·1143 words·3 mins·
blogging php AdventOfCode
May Meow
Author
May Meow
MayMeow is a developer and cybersecurity enthusiast with a passion for cryptography, DevSecOps, and open-source contributions. They enjoy creating tools that strengthen digital security, blending creativity and technology to innovate in fields like PHP and .NET. Always exploring new frontiers in tech, MayMeow is dedicated to safeguarding the digital landscape through their work.

ここしばらくの間、自分が満足できるブログシステムについて考えていた。GhostやWordpress(マルチサイトを含む)、その他いくつか試してみたが、まだ何かが足りなかった。

GhostはJavascriptで作られていて(これは私の友人ではない)、機能を追加するのが難しい。

Wordpress - なぜテーマがこんなに多くのプラグインを必要とするのでしょうか?ショップで買ったテーマを使っている皆さんは、プラグインが何をするか知っていますか?あるいはいつアップデートされたのか?テーマによってサイトの更新ができなくなるのは本当に嫌だ。それに、ウェブ用の単語エディタみたいなのも好きじゃない。WYSIWYGとか呼ばれるものだ。

現在はHugoという静的ジェネレーターを使っている。クライアントのサイトにも使っている。しかし、静的ジェネレーターにはいくつかの制限がある。

だから自分で作ってみたんだ。確か10個くらい(?私が始めたとき、マークダウン形式とタグを使用する記事を持つ一人のユーザーのためのシンプルなプラットフォームが欲しいと思っていました。派手さはない。

Wordpressのマルチサイトにヒントを得て、マルチドメインにも対応しました。複数のブログ(必要ならサブブログ)を1つの管理画面で管理できる。

先週、AIのサマリーを追加したが、レスポンスタイムに問題があり、投稿がデータベースに保存されるのに時間がかかりすぎた。(通常は数ミリ秒だが、今は約10秒かかる)。

そこで今週末、キューを追加した。cronで定期的に呼び出されるシンプルなコマンドで、キューからジョブをロードする。 連続ループもテストしていますが、今のところはcronで大丈夫だと思います。

自分のコンピューターでテストし、Forgeを使ってサーバーにプッシュした後、別の問題が見つかりました。僕のコンピューターはMySQLを使っていて、サーバーはPostgresqlを使っている。

Postgresqlはジョブのデータをデータベースに保存する方法に問題があった。私はシリアル化されたデータをそこに置くのが賢明だと思ったが、postgresはこれを好まない。 また複雑にしてしまった

CakePHPのslackで質問したところ、何人かの人が、そのようなこと(シリアライズされたデータをデータベースに保存すること)はすべきではなく、タスクで消費したいエンティティのidを保存するか、元のデータが必要ならjsonを使うのが良い方法だとアドバイスしてくれました。

私はjsonを使うことに決め、コントローラを書き直し、今ではキューは動いている。

ブログの見た目と機能には満足しているが、カスタムブログに移行する前のRSSエクスポートがまだ恋しい。

ソースコード: MeowBlog

Reply by Email

Related

🎄 Advent of Code Day 10
·1163 words·6 mins
AdventOfCode
🎄 Advent of Code Day 09
·378 words·2 mins
AdventOfCode
🎄 Advent of Code 08일차
·1552 words·4 mins
AdventOfCode Korean article