Hi Niels, I have a prototype of XWIki partially working with some changes on app engine
http://xwiki1.appspot.com/bin/view/Main/ I've made all the servlet / jvm part work as well as the cache subsystem. The main missing piece is a real storage with support for querying. We have no plans at this point to continue the work. If somebody wants to help I can give directions. Ludovic Niels Mayer a écrit : > http://code.google.com/appengine/docs/whatisgoogleappengine.html > > Java is supported via Java 6 JVM and standard libs: > http://code.google.com/appengine/docs/java/gettingstarted/ > > My biggest question w/r/t Xwiki is AppEngine's database support: > > >> The Datastore >> >> App Engine provides a powerful distributed data storage service that >> features a query engine and transactions. Just as the distributed web server >> grows with your traffic, the distributed datastore grows with your data. >> >> The App Engine datastore is not like a traditional relational database. >> Data objects, or "entities," have a kind and a set of properties. Queries >> can retrieve entities of a given kind filtered and sorted by the values of >> the properties. Property values can be of any of the supported property >> value >> types<http://code.google.com/appengine/docs/python/datastore/typesandpropertyclasses.html> >> . >> >> Datastore entities are "schemaless." The structure of data entities is >> provided by and enforced by your application code. The Java JDO/JPA >> interfaces and the Python datastore interface include features for applying >> and enforcing structure within your app. Your app can also access the >> datastore directly to apply as much or as little structure as it needs. >> >> The datastore is strongly >> consistent<http://en.wikipedia.org/wiki/Consistency_model>and uses optimistic >> concurrency >> control<http://en.wikipedia.org/wiki/Optimistic_concurrency_control>. >> An update of a entity occurs in a transaction that is retried a fixed number >> of times if other processes are trying to update the same entity >> simultaneously. Your application can execute multiple datastore operations >> in a single transaction which either all succeed or all fail, ensuring the >> integrity of your data. >> >> The datastore implements transactions across its distributed network using >> "entity groups." A transaction manipulates entities within a single group. >> Entities of the same group are stored together for efficient execution of >> transactions. Your application can assign entities to groups when the >> entities are created. >> >> > http://code.google.com/appengine/docs/java/gettingstarted/usingdatastore.html > > >> App Engine includes support for two different API standards for the >> datastore: Java Data Objects <http://java.sun.com/jdo/index.jsp> (JDO) and >> Java Persistence >> API<http://java.sun.com/developer/technicalArticles/J2EE/jpa/>(JPA). These >> interfaces are provided by DataNucleus >> Access Platform <http://www.datanucleus.org/>, an open source >> implementation of several Java persistence standards, with an adapter for >> the App Engine datastore. >> >> > .............. > > Question: > > What would it take to make Xwiki work on Google App-engine? Is the > "datastore" google provides compatible with xwiki's database needs? > > What other Java-hosting services "out there" support Xwiki? Database and > java "hosting" issues for Xwiki can be problematic, even though it makes > more sense, to public-host using a language like Java. > > I think for my own situation, I would end up "hosting" Xwiki myself, as a > $500.00 box can run a few Xwiki-based sites just fine. However, for > people/customers wanting an Xwiki-based site that don't know about system > administration, JVM's, apache, etc, it would be nice if there was an easier > path to managed hosting in an "open market." This needn't limit xwiki.com's > hosting market, as much as it would open-up xwiki for wider deployment and > use, and make it competitive in situations where Php or RoR might have > easier buy-in, such as in the USA.... > > Imagine if in the future, one of the installers Xwiki.org offered worked > directly with http://appengine.google.com/ so that people would > actually have their own live, public xwiki sites hosted for them. There's > plenty of sites that would be happy with this level of free > service ( http://code.google.com/appengine/docs/quotas.html ): > > Resource Free Default Quota Billing Enabled Quota Daily Limit Maximum > Rate Daily > Limit Maximum Rate Requests 1,300,000 requests 7,400 requests/minute > 43,000,000 > requests 30,000 requests/minute Outgoing Bandwidth > (billable<http://code.google.com/appengine/docs/quotas.html#Billable_Quotas_and_Fixed_Quotas>, > includes HTTPS) 1 gigabyte 56 megabytes/minute 1 gigabyte free; 1,046 > gigabytes maximum 740 megabytes/minute Incoming Bandwidth > (billable<http://code.google.com/appengine/docs/quotas.html#Billable_Quotas_and_Fixed_Quotas>, > includes HTTPS) 1 gigabyte 56 megabytes/minute 1 gigabyte free; 1,046 > gigabytes maximum 740 megabytes/minute CPU Time > (billable<http://code.google.com/appengine/docs/quotas.html#Billable_Quotas_and_Fixed_Quotas> > ) 6.5 CPU-hours 15 CPU-minutes/minute 6.5 CPU-hours free; 1,729 CPU-hours > maximum 72 CPU-minutes/minuteNiels > http://nielsmayer.com > > PS: although at 1 gigabyte outgoing bandwidth, and some of the sizable > javascript libraries these days... you probably want to use > http://webmuch.com/how-why-you-should-use-google-cdn/ alongside :-) > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs > > -- Ludovic Dubost Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ users mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/users
