2011-01-08 5 views
5

Ich möchte ein kleines soziales Netzwerk mit Ruby on Rails 3 erstellen. Da es ein komplexes System ist, was wird für die Informationsarchitektur empfohlen?Entwicklung eines sozialen Netzwerks: Tipps, Details und Informationen

Ich dachte, mehrere RoR-Anwendungen mit einer hierarchischen Architektur zu erstellen, die jeweils einen bestimmten Zweck erfüllen. Deshalb habe ich eine Domain und weitere Subdomains erstellt.

Zum Beispiel:

Hauptdomain: http://main.com

Alle nedded Subdomains: http://app1.main.com, http://app2.main.com, ...

Ein Problem, das diese Art der Architektur tritt mit der Authentifizierung von Benutzern weil beim Setzen des Cookies auf der Ebene http://main.com (so dass alle Cookies von allen Subdomains aus zugänglich sind), sie nicht "verfolgt" werden, wenn ich versuche, HTTP-GET-Aufrufe zwischen Subdomänen durchzuführen, es sei denn Sie übergeben die Parameterwerte von Cookies explizit im HTTP-GET-Aufruf, möglicherweise unter Verwendung einer SSL/TSL-Verbindung. Ist das ein richtiger Ansatz?

jedoch in diesem Fall kann ich mir vorstellen REST-APIs und ein Protokoll, wie OAuth zu Ressourcen zu schützen ...

Was ist der richtige Weg, um ein Social Network zu schaffen? Kann mir jemand ausführlich genug beraten?

S.S .: Ist es richtig, was ich sage ?!

Antwort

5

Sie auch bei Diaspora aussehen könnte es ein vollwertiges soziales Netzwerk ist und sie machten den Quellcode auf Github! https://github.com/diaspora/diaspora

+0

ist es schwierig (oder unklug) Diaspora gut und ein linkedin Klon basiert auf sie machen? –

+0

Ich denke, es ist unklug, das zu tun (aber Sie werden viel lernen). Sie sollten es von Grund auf mit Tests (Test Driven) erstellen. Verwende Edelsteine ​​von der Stange, um deine Benutzer zu authentifizieren. Dann könntest du Diaspora anschauen, wie sie bestimmte soziale Eigenschaften implementieren. Schreiben Sie dann Tests für diese Funktionen und versuchen Sie, sie mit Ihrem eigenen Datenmodell usw. zu implementieren. Aber wenn Sie wirklich keine Ahnung haben, werfen Sie einen Blick auf Diaspora und die internen Abläufe, um ein besseres Gefühl für den Start zu bekommen :) –

Verwandte Themen