tani's avatar
tani
npub1masa...npc9
I am a LISP interpreter
tani's avatar
tani 1 week ago
学生および25歳以下の方向けに、Google Summer of Code (GSoC) のお知らせです。 現在、Haskell財団のプロジェクト候補(Ideas List)が公開されています。 Haskell GSoC 2024 Ideas List GSoCは、オープンソースプロジェクトへの貢献に対してGoogleから規定の報奨金が支払われるプログラムです。夏休みの期間を利用し、対価を得ながら本格的な開発経験を積むことができます。 私自身もメンターとして、このリストにアイデアを提案しています。 もし興味を引くテーマがあれば、プロポーザルの作成や技術的な詳細について相談に乗ることが可能です。 実務に近い形でのOSS開発や、Haskellコミュニティへの貢献に興味がある方は、詳細を確認してみてください。質問等は随時受け付けています。
tani's avatar
tani 1 week ago
Nostrリレーのランタムガ Bun だと、ほぼ単調増加してしまっていたのに Deno だとノコギリ歯みたいになって、ちゃんと GCが効いてるのがわかる。
tani's avatar
tani 1 week ago
コーディングエージェントつかって、bun から deno にきりかえたら、なんかメモリ使用量が安定したっぽい。Bun は速度を出すために富豪的な戦略をとってるっぽい? (省メモリ設定 --smol でも)
tani's avatar
tani 1 week ago
n0str リレーのメモリ負荷の原因はSQLiteの管理にあるっぽい。Bun 側は 50MB程度しか消費してないのに、SQLite側で100MB ~ 300MBも単調増加的に消費している。
tani's avatar
tani 1 week ago
あ、アイディア思いついたので、さっそくクライアント作りを週末するぞ!
tani's avatar
tani 1 week ago
リレーサーバーつくったし、nostr で調整さんもつくったので、最後は nostr クライアントもつくりたい
tani's avatar
tani 1 week ago
もう 51% になってる .... ぴえん
tani's avatar
tani 1 week ago
さっそく メモリ使用量 30% (270MB / 700MB) に到達してて草。nostr 厳しい
tani's avatar
tani 1 week ago
wss://n0str.tani.cc の DBを最適化してさらに Async Iterator をつかって GC 節約もしたので、今度こそ! いざ尋常に勝負!
tani's avatar
tani 1 week ago
メモリ無限GB欲しい
tani's avatar
tani 1 week ago
リレーと密結合した実装なので、ssr ができる。リクエスト前の投稿分は ssr で事前レンダリングしてあって、快適に閲覧できる仕様になっております。リレーサーバーだからできること。
tani's avatar
tani 2 weeks ago
本当はバリデーションライブラリも使いたくないし、暗号周りも WebCrypto APIや自作にしたかったけど、安全性周りのものを自作するのは流石に自身がなかった。まあ、Bun / arktype / nostr-tools を各月で更新監視すれば充分カバーできるなと。
tani's avatar
tani 2 weeks ago
n0str の依存関係 バリデーションライブラリと nostr-tools しかないの偉いと思うんだ。OpenBSDの思想と同じで、依存先を最小化すれば安全という戦略。 image
tani's avatar
tani 2 weeks ago
n0str の プロトコル対応について修正できた気がする。
tani's avatar
tani 2 weeks ago
やはい公開して、みんなに使ってもらわないと、テストだけではわからないことがあるんだなぁ。
tani's avatar
tani 2 weeks ago
僕が凄いというより、なんでもはいっているJSランタイムとSQLite が凄い。
tani's avatar
tani 2 weeks ago
一応、`bun stress` で負荷テストしたら 10000件くらい一気に書き込んでも死ななかった。SQLite すごい。
tani's avatar
tani 2 weeks ago
新しいNostrリレー実装「n0str」を公開しました! 導入コストゼロを目指したシングルバイナリのリレーです。 ✨ 注目ポイント: 📦 爆速設営:バイナリを落として実行するだけ。Docker不要、SQLite内蔵。 🌏 日本語検索に強い:Intl.Segmenter採用で、日本語の全文検索(NIP-50)が正しく動作します。 ⚡ 最新仕様:Negentropy (NIP-77) や NIP-45 など、30以上のNIPに対応。 🛠 Bun製:モダンで軽量、高性能なアーキテクチャ。 お試し接続先:wss://n0str.tani.cc リポジトリ: 自分でリレーを立ててみたい方、ぜひ試してみてください! #nostr #nostrdev #relay #opensource #n0str