Have you actually priced out the "costly" centralized infrastructure? 
I'd recommend doing so.  In my experience, you can handle hundreds of 
thousands of online users (let's say userbase 1M strong, 25% online at 
any point in time) from a single $40/mo central server.  If you can't 
make $40/mo off of 1M users, you should really reconsider your service.

Alternatively, let's say you bill your time at $5/hr.  If your central 
server saves you 8 hours of work a month, it's paid for itself -- and in 
practice, problems that are trivially easy to solve with a server take 
10-100x longer to solve in a purely decentralized manner.

Finally, unless you're so dedicated to decentralization that you would 
rather dump the project than go central, you should probably accept up 
front that someday, you'll go central: every hour spent doing something 
the hard way is probably just a waste of time when the easy way is right 
there.

Basically, unless your project is 100% dependent upon being purely 
decentralized, there's no practical reason to go that route.  It's 
harder, it takes longer to build, it has lower performance, it's more 
wasteful of your end user resources, and is worse in every single 
measurable way.

The only reason to go pure decentralized is if you are explicitly 
attempting to build something that cannot be traced to you, that you 
cannot turn off, or that serves no other purpose but to be fun.  Any of 
those are fine reasons, but if you actually have a different goal -- 
such as to make a useful product -- just save yourself the time and go 
central from the start, everywhere it helps.

-david

leviant Leviant wrote:
> The system of course will have central components which will be used for 
> crypt key enrollment and user authentication. But I doubt that existing 
> P2P VoIP systems use these login/authentication servers for tracking 
> user sessions. If this task can be handled by P2P network why should we 
> issue additional requests to costly centralized infrastructure? Of 
> course if it *cannot* then I'll have to implement centralized session 
> tracking.
> 
> 2009/5/30 David Barrett <dbarr...@quinthar.com 
> <mailto:dbarr...@quinthar.com>>
> 
>     leviant Leviant wrote:
>      >
>      > I do not want (at least yet) to implement any central component
>     for such
>      > purposes.
> 
>     I guess I'd ask: why this design constraint?  The only practical benefit
>     I can see to a "pure" decentralized design is protecting yourself from
>     forced shutdown.  But even that can be mitigated by having servers in
>     different jurisdictions.
> 
>     Basically, if you're saying "I just want to build cool tech and that
>     sounds fun", that's a totally valid reason.  But if you're trying to
>     build a scalable, secure, high-performance, real-world usable system, I
>     see no reason to avoid central components.
> 
>     -david
> 
>     _______________________________________________
>     p2p-hackers mailing list
>     p2p-hackers@lists.zooko.com <mailto:p2p-hackers@lists.zooko.com>
>     http://lists.zooko.com/mailman/listinfo/p2p-hackers
> 
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> p2p-hackers mailing list
> p2p-hackers@lists.zooko.com
> http://lists.zooko.com/mailman/listinfo/p2p-hackers

_______________________________________________
p2p-hackers mailing list
p2p-hackers@lists.zooko.com
http://lists.zooko.com/mailman/listinfo/p2p-hackers

Reply via email to