Toscano 不動産ポータル

業界

不動産

組織の規模

大規模 (1,000 ‐ 9,999 人の共同作業者)

国/地域

イタリア

テクノロジ

Blazor ASP.NET Core Cloud Artificial Intelligence & ML

会社

Toscano

イタリアの大手不動産フランチャイザーの一つである Gruppo Toscano は、何百万人もの住宅購入者と売り手向けの公開ポータルを再構築する必要が生じた際、社内のテクノロジー チームに依頼しました。グループの技術部門である Toscano Digital は、イタリア全土で不動産仲介、クレジット、リノベーション、保険サービスを提供するネットワークのデジタル エコシステム全体を設計および管理しています。

Toscano Digital の物語が注目に値するのは、小規模なチームが成し遂げた規模の大きさです。わずか 5 人の開発者と .NET への深いコミットメントにより、チームは年間 460 万セッション、1,100 万ページビューを処理する高トラフィックのコンシューマー ポータルを構築しました。

何百万人ものユーザー向けの最新化

Toscano Digital は 2014 年から .NET を採用しており、2020 年には、Gruppo Toscano ネットワーク全体で約 1,000 人の共同作業者が毎日使用するミッションクリティカルな B2B CRM の第 2 バージョンに Blazor WebAssembly を早期導入しました。.NET Frameworkと jQuery から Web API および Blazor WebAssembly への移行は大きな成功を収め、機能の速度が速く、メンテナンスが大幅に簡素化されました。

しかし、何百万人ものイタリア人が住宅を探す B2C サイトであるグループの一般向けポータルを再構築する時、状況は異なりました。新しいサイトは、不動産リスティングのトラフィックの主な原動力であるオーガニック検索に最適化する必要がありました。モバイル デバイスで高速に読み込む必要があります。予測できないトラフィックの急増にも対応する必要がありました。

従来の方法では、React、Next.js、または Vue を専門とする別のフロントエンド チームを採用する必要がありました。Toscano Digital はそれらの選択肢を検討しましたが、CEO の Pietro Montelatici 氏は別の道を選びました。「JavaScript フレームワークを採用すると、チームのスキルセットが分断され、共有ビジネス ロジックの管理がより複雑になります」と彼は説明します。「私たちのような小規模なチームにとって、バックエンドとフロントエンドの両方で同じ言語を使えることは、生産性を飛躍的に高める要因です。」

チームは内部 CRM と一般向けポータルの両方で Blazor に全面的に取り組み、.NET 10 のサーバーサイドレンダリング機能がトラフィックの多い消費者向けサイトに求められる SEO とパフォーマンスを実現できると判断しました。

SEO と速度のための "ニュートラル SSR" アーキテクチャ

ユーザーが期待する豊富なインタラクティブ性を維持しつつ、検索エンジン最適化 (SEO) の要件を満たすために、Toscano Digital は静的サーバーサイドレンダリングと WebAssembly ハイドレーションを組み合わせた多層アーキテクチャを設計しました:

  • 静的 SSR: .NET 10 の静的サーバーサイドレンダリングを使用し、ページはサーバー上でレンダリングされ、検索エンジンが即座にインデックス可能な完全な HTML として配信されます。
  • Edge キャッシュ: レンダリングされた HTML は意図的に "ニュートラル" であり、ユーザー固有の個人用設定は取り除かれ、Cloudflare は世界中で 2 秒未満の配信のためにエッジにキャッシュできます。キャッシュの消去は、デプロイごとにGitHub Actionsによって自動化されます。
  • WASM ハイドレーション: 最初のページ読み込み後、Blazor WebAssembly が引き継ぎ、対話性とパーソナライズを提供します。保存した検索やアカウント情報などのユーザー固有データは、初回レンダリング後に API 経由で読み込まれます。

このアプローチにより、Toscano Digital は両方の利点を最大限に活用できます。検索エンジンは完全にレンダリングされたコンテンツを見ることができますが、ページがインタラクティブになると、ユーザーは流動的でアプリのようなエクスペリエンスを得ることができます。

PersistentComponentState: 合理化されたハンドオフ

サーバー側レンダリングとクライアント側の対話機能を組み合わせる最も難しい側面の 1 つは、2 つの間のハンドオフです。Blazor WebAssembly がサーバーでレンダリングされたページから引き継ぐ際、冗長な API 呼び出しや目に見えるちらつきなしにアプリケーションの状態をシームレスに移行する必要があります。

.NET 10 では Blazor に [PersistentState] 属性が導入され、プロセスが大幅に簡素化されました。Toscano Digital にとって、この改善は大きな変革となりました。

PersistentComponentState は単なる機能以上のもので、従来の方法にはなかったサーバーからクライアントへの確実で信頼性の高いハンドオフ基盤を提供し、Blazor を大規模な B2C に最適な選択肢にしています。

CEO、Pietro Montelatici 氏 Toscano Digital

[PersistentState] 属性により、チームが以前に手動で状態転送を管理するために書いていた複雑な定型コードが不要になりました。以前のアプローチと比較すると、宣言型モデルでは、より堅牢で信頼性の高いメカニズムが提供され、アーキテクチャ全体の保守性が大幅に向上しました。

モバイルでの「ラストマイル」チューニング

コア アーキテクチャが整った後、Toscano Digital はモバイル パフォーマンスに注力しました。デスクトップの結果は良好で、First Contentful Paint はわずか 0.6 秒でした。しかし、WebAssembly ランタイムの起動とハイドレーション フェーズが原因で、モバイル デバイスの合計ブロッキング時間が 1 秒を超えました。

チームは体験の最適化に注力し、AOT コンパイルやアセンブリ トリミングの戦略を試しました。テストでは、Ahead-of-Time コンパイルが実行速度を向上させる一方で、モバイル デバイスでの初期解析時間が増加するという微妙なトレードオフが明らかになりました。Toscano Digital は、Microsoft の Blazor エンジニアリング チームと直接協力して、ユーザー操作が必要になるまで WebAssembly の初期化を遅らせる、機能を犠牲にすることなく認識されるパフォーマンスを向上させるなどの高度な読み込み戦略を検討しました。

結果は明白です。新しいアーキテクチャにより、平均サーバー応答時間は 200 ミリ秒から 30 ミリ秒に短縮され、85% の改善を達成しました。

真のフルスタック チーム

.NET 10 と Blazor により、フロントエンドとバックエンドの壁が取り払われ、5 人の小規模チームで大規模かつ複雑な製品を管理できるようになりました。

CEO、Pietro Montelatici 氏 Toscano Digital

Montelatici にとって、.NET を選択した最大の効果は組織面にありました。単一の言語とフレームワークでスタック全体をカバーするため、バックエンド サービスを構築する開発者とユーザー インターフェイスを作成する開発者の間に障壁がありません。5 人のチーム全員がシステムのどの部分でも作業できます。

これにより、通信のオーバーヘッドや統合エラー、つまり大規模で分断されたチームの作業を遅らせる摩擦が大幅に減少しました。機能はアイデアから本番環境へより速く移行し、チームは専門家を待つことなくビジネスのニーズに対応できます。

C# 以外にも、チームは複雑な URL ルーティング ロジックの管理にパターン マッチング、データ操作に LINQ といった .NET の機能を活用しています。Montelatici 氏は、大規模なコードベース全体でコードをクリーンかつ表現豊かに保つために、これらが不可欠だと述べています。

Azure と GitHub の上に構築

Toscano Digital のインフラストラクチャは、App ServiceAzure FunctionsAzure SQLService BusBlob StorageLogic Apps、および B2B CRM の AI 搭載機能 (物件説明の書き換えやエージェント向けコミュニケーション戦略の提案など) に使用される Microsoft Foundry を含め、すべて Microsoft Azure 上で稼働しています。

ソフトウェアのライフサイクル全体は GitHub で管理され、GitHub Actions が CI/CD パイプラインを支えています。これには、デプロイごとにエッジキャッシュされたコンテンツを最新に保つ自動化された Cloudflare キャッシュ パージも含まれます。

実際の成果

新しいポータルは 2026 年 3 月初旬にローンチされ、結果は期待を上回りました:

  • サーバー応答時間: 200ms → 30ms (85% 短縮)
  • First Contentful Paint: デスクトップで 0.6 秒
  • 新規ユーザー アカウント: 最初の 3 週間で約 10 万件作成されました
  • トラフィック処理: Azure と SSR の組み合わせにより、予期しないトラフィックの急増をシームレスに管理されます

このプロジェクトは、Gruppo Toscano が商用ネットワークの 600 人以上のメンバーを対象に行った全国ロードショーで成功裏に発表され、.NET テクノロジーがグループの成長戦略とデジタル変革を支える準備が整っていることが確認されました。

信頼を築く透明性

ポータルの機能の中で、Toscano Digital が最も誇りに思っているのはパーソナル エリアです。顧客は、購入または販売プロセスのすべてのフェーズをリアルタイムで 24 時間監視できます: 物件の閲覧統計情報、スケジュールされた予定、受信した潜在顧客、および登録情報の販売に使用されている特定のメディア チャネルなど。

.NET の力により、不動産市場の複雑さを流動的で透明性が高く高速なユーザー エクスペリエンスに変えることができます。

CEO、Pietro Montelatici 氏 Toscano Digital

この完全な透明性により、Toscano の代理店と顧客の信頼関係が強化され、テクノロジーへの投資がイタリアの不動産市場における競争優位性となりました。

今後の展望

Blazor の早期導入者から 5 人のチームによる大規模なコンシューマー ポータルの提供に至る Toscano Digital の歩みは、小規模なチームが統合されたテクノロジー スタックに専念することで何が可能になるかを示しています。断片化されたマルチフレームワーク アプローチよりも .NET と Blazor を選択することで、制約を強みに変え、1 つの言語、1 つのチーム、数百万のユーザーにサービスを提供しています。

エージェント ネットワーク向けの AI 搭載機能拡張計画とパフォーマンス最適化への継続的な投資により、Toscano Digital は .NET が単なるバックエンド技術ではないことを証明しています。さらに、.NET は最も要求の厳しい消費者体験に対応可能なフルスタック プラットフォームです。