Re: Prevayler-Discussion Digest, Vol 43, Issue 8
Karl Wettin <[email protected]>
| Newsgroups | gmane.comp.java.prevayler |
|---|---|
| Message-ID | <[email protected]> |
There are great services such as MarkMail and Nabble. Ask them to start index the lists and you'll be able to read and post in a more web fora way. karl 29 okt 2011 kl. 05.33 skrev Robert Friberg: > I sympathize with Angelo 100%. Signal to noise ratio becomes especially ridiculous when replying to a digest mesage, like Im doing right now. Bonus points for the useless subject line. > > Good practical tips from Klaus but.. Mailing lists are so 1996. Why not move to a forum? And while were at it why not broaden the subject to prevalence in general, perhaps with implementation specific subfora. Stackoverflow is pretty awesome. > > Sent from my iPad > > On 29 okt 2011, at 00:54, "[email protected]" <[email protected]> wrote: > >> Send Prevayler-Discussion mailing list submissions to >> [email protected] >> >> To subscribe or unsubscribe via the World Wide Web, visit >> https://lists.sourceforge.net/lists/listinfo/prevayler-discussion >> or, via email, send a message with subject or body 'help' to >> [email protected] >> >> You can reach the person managing the list at >> [email protected] >> >> When replying, please edit your Subject line so it is more specific >> than "Re: Contents of Prevayler-Discussion digest..." >> >> >> Today's Topics: >> >> 1. [offtopic] Prevayler-Discussion Digest, Vol 43, Issue 7 >> (Angelo Schneider) >> 2. Re: [offtopic] Prevayler-Discussion Digest, Vol 43, Issue 7 >> (Klaus Wuestefeld) >> 3. Re: Web App Mirroring (Klaus Wuestefeld) >> 4. Type-safe Prevayler, using generics (Naveen Chawla) >> >> >> ---------------------------------------------------------------------- >> >> Message: 1 >> Date: Fri, 14 Oct 2011 16:54:31 +0200 >> From: Angelo Schneider <[email protected]> >> Subject: [Prevayler-discussion] [offtopic] Prevayler-Discussion >> Digest, Vol 43, Issue 7 >> To: [email protected] >> Message-ID: <[email protected]> >> Content-Type: text/plain; charset=us-ascii >> >> Hm :) >> >> seems times are changing ... to much. >> >> Once when we invented eMail, it was common to DELETE all old text which is not needed anymore for citation. >> >> Now everyone adds an answer to a text on the top. Top Answer Bottom Full Quote or something like this it was called. >> >> Please, for mailing lists, especially for those who receive digests, like me: remove all text you are not commenting on. >> >> It is so much more easy to read then ... and the digest is 90% smaller. >> >> Sorry, I don't want to "teach" anyone, but when the internet was "invented" people also "agreed" on netiquette. I assume most people are to young to ever have heard about this, but this site: http://en.wikipedia.org/wiki/Posting_style will give you an idea. >> >> Keep in mind, we are on a MAILING LIST: everyone gets every email. Usually in the order it was sent in. So it is a waste of everything: energy, bandwidth, storage and most importantly: TIME in RL of the reader who has to check if more important stuff is following ... and is disappointed to read only AGAIN a quoted part that contains other quoted parts of other messages that contain quoted parts again of all the messages he already has read! >> >> Sorry for this, but on this mailing list for some reason this "modern way of quoting" is abused to the extreme. >> >> Best Regards, >> >> Angelo >> >> privat: -------------------- www.oomentor.de -------------------------- >> Angelo Schneider OOAD/UML [email protected] >> Putlitzstr. 24 Patterns/FrameWorks Fon: +49 721 9812465 >> 76137 Karlsruhe C++/JAVA Mob: +49 172 9873893 >> >> >> >> >> >> >> >> ------------------------------ >> >> Message: 2 >> Date: Fri, 14 Oct 2011 12:08:55 -0300 >> From: Klaus Wuestefeld <[email protected]> >> Subject: Re: [Prevayler-discussion] [offtopic] Prevayler-Discussion >> Digest, Vol 43, Issue 7 >> To: "Open discussion about the Prevayler project." >> <[email protected]> >> Message-ID: >> <CAMAooZEdqreU-aDToTdOG7Kr+D-0o_b_+XjkU1Lo0CpkszNGjA@mail.gmail.com> >> Content-Type: text/plain; charset=ISO-8859-1 >> >> Thanks, Angelo. >> >> I usually delete old stuff every 5 mails into the conversation or so. >> Old habits. >> >> I believe this problem is not specific to the Prevayler list and I >> dont think an appeal to consciousness will solve the issue at this day >> and age. >> >> A more reasonable set of netiquette rules, I think, is: >> - Always use plaintext, except when rich-text is absolutely necessary. >> - Stop using digests for this list. Get every email. >> - Use GMail or any other mail reader that will group mails in a >> conversation and fold quoted text. >> >> Klaus >> >> >> On Fri, Oct 14, 2011 at 11:54 AM, Angelo Schneider >> <[email protected]> wrote: >>> Hm :) >>> >>> seems times are changing ... to much. >>> >>> Once when we invented eMail, it was common to DELETE all old text which is not needed anymore for citation. >>> >>> Now everyone adds an answer to a text on the top. Top Answer Bottom Full Quote or something like this it was called. >>> >>> Please, for mailing lists, especially for those who receive digests, like me: remove all text you are not commenting on. >>> >>> It is so much more easy to read then ... and the digest is 90% smaller. >>> >>> Sorry, I don't want to "teach" anyone, but when the internet was "invented" people also "agreed" on netiquette. I assume most people are to young to ever have heard about this, but this site: http://en.wikipedia.org/wiki/Posting_style will give you an idea. >>> >>> Keep in mind, we are on a MAILING LIST: everyone gets every email. Usually in the order it was sent in. So it is a waste of everything: energy, bandwidth, storage and most importantly: TIME in RL of the reader who has to check if more important stuff is following ... and is disappointed to read only AGAIN a quoted part that contains other quoted parts of other messages that contain quoted parts again of all the messages he already has read! >>> >>> Sorry for this, but on this mailing list for some reason this "modern way of quoting" is abused to the extreme. >>> >>> Best Regards, >>> >>> Angelo >>> >>> privat: -------------------- www.oomentor.de -------------------------- >>> Angelo Schneider ? ? ? ? OOAD/UML ? ? ? ? [email protected] >>> Putlitzstr. 24 ? ? ? Patterns/FrameWorks ? ? ? ? ?Fon: +49 721 9812465 >>> 76137 Karlsruhe ? ? ? ? ? C++/JAVA ? ? ? ? ? ? ? ?Mob: +49 172 9873893 >>> >>> >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> All the data continuously generated in your IT infrastructure contains a >>> definitive record of customers, application performance, security >>> threats, fraudulent activity and more. Splunk takes this data and makes >>> sense of it. Business sense. IT sense. Common sense. >>> http://p.sf.net/sfu/splunk-d2d-oct >>> _______________________________________________ >>> To unsubscribe go to the end of this page: http://lists.sourceforge.net/lists/listinfo/prevayler-discussion >>> _______________________________________________ >>> "Databases in Memoriam" -- http://www.prevayler.org >>> >> >> >> >> ------------------------------ >> >> Message: 3 >> Date: Fri, 14 Oct 2011 21:18:52 -0300 >> From: Klaus Wuestefeld <[email protected]> >> Subject: Re: [Prevayler-discussion] Web App Mirroring >> To: "Open discussion about the Prevayler project." >> <[email protected]> >> Message-ID: >> <CAMAooZH2C2MadUtZvyd-2ebJNRkxAjYqVKb3Upy8ObY24FBRbQ@mail.gmail.com> >> Content-Type: text/plain; charset=ISO-8859-1 >> >> I like the idea of Prevayler simply spawning a mirror from a remote >> server, including the code. >> >> For that Prevayler would have to know about and control the classpath. >> That is also good for making sure transactions are replayed and >> snapshots are read using the correct code. ;) >> >> I am currently working on a startup that will require mirroring if our >> site usage ramps up as we hope. I have never user app server >> clustering, so I cannot say. I suggest you get more experience playing >> with prevayler before we continue discussing. Some of the things you >> say dont make any sense. >> >> You might want to get in touch with the SolidStateHttp project folks. >> https://github.com/bihaiko/SolidStateHttp They intend to implement the >> ideas previously discussed in this list as HttPrevayler: prevalence at >> the http level, so you can use any web framework and simply forget >> about Transactions, etc... >> >> Klaus >> >> >> On Fri, Oct 14, 2011 at 9:44 AM, Naveen Chawla <[email protected]> wrote: >>> The simplest solution for my app seems like Java app server replication >>> across 2 computers using the app server's built-in clustering, if it works. >>> This is because it seems simpler to?replicate the whole?web app?for >>> failover/switch-off availability, as I would presume this?does, rather than >>> just the prevalent system.?Have you ever used this? But if >>> Prevayler-mirroring does indeed intend to replicate the whole?web?app, which >>> I sincerely hope it does?(by for example, demanding?the web app's path >>> is?passed to Prevayler's "makeReadyForMirroring" method), then I'd?love?to >>> be able to go to the console?of any?new or upgraded computer, simply >>> download a?utility app from Prevayler to it, and type: >>> >>> prevayler_produce_mirror myApp >>> >>> which automatically listens on its all connections for a >>> "Prevayler-mirroring-ready" system named "myApp" on other >>> computers,?downloads?and?produces?a master-capable-mirror on this computer >>> and launches it, and you just carry on,?rather than having to code and >>> build?this?utility?application?every time. That's because?this would >>> be?a?standard procedure?anyway, the only variable being?what you substitute >>> for "myApp". The benefit of?this?over the aforementioned >>> app-server-replication might be?that I might be able to use >>> a?different/better?app server on each new mirror? >>> Sorry if these are stupid ideas. But they seem to make sense to me at the >>> moment. >>> >>> I just can't see how?true failover replication can be achieved with e.g. 2 >>> computers without replicating the entire web app. It's like 1 + 1 =/= 3 to >>> me. Am I wrong? >>> >>> On 13 October 2011 23:39, Klaus Wuestefeld <[email protected]> wrote: >>>> >>>> Prevayler mirroring is demoed with demo2 inside the Prevayler distro. >>>> Run it with mirroring and let me know. >>>> >>>> It is only a proof of concept, though. Some simple things would still >>>> have to be implemented: if the master crashes and restarts, for >>>> example, the clients will not attempt to reconnect. >>>> >>>> Klaus >>>> >>>> >>>> On Thu, Oct 13, 2011 at 2:50 PM, Naveen Chawla <[email protected]> >>>> wrote: >>>>> That's brilliant Klaus, thanks! This'll?choose the G1 collector in Java >>>>> 7 by >>>>> default, right? >>>>> >>>>> I have no idea how big my heap will become. But I'd like to prepare for >>>>> sky >>>>> being the limit. Which is also why I desperately want to be able to >>>>> hot-swap/upgrade machines to add RAM seamlessly while my app is still >>>>> running. This was planned for Prevayler 3, right? Should I wait for this >>>>> or >>>>> should I do clustering with an app server to do replication? Do these >>>>> work >>>>> ok for this purpose (i.e. just being able to literally switch off one of >>>>> the >>>>> computers any time, chuck some RAM in, and carry on, repeat with the >>>>> other >>>>> computer, or just swap for a new computers, one at a time,?with the >>>>> right >>>>> configuration)? Which Java app server is best for this? Or should I wait >>>>> for >>>>> Prevayler 3? >>>>> >>>>> On 13 October 2011 15:45, Klaus Wuestefeld <[email protected]> wrote: >>>>>> >>>>>> The Java VM since Java5 has simplified GC options that they call >>>>>> "ergonomic". You can choose to minimize any two out of the following >>>>>> three things, according to your needs: >>>>>> >>>>>> ?1) Pause time for exclusive GC. >>>>>> ?2) % CPU for GC em parallel with your application. >>>>>> ?3) Use of memory. >>>>>> >>>>>> Java5: >>>>>> >>>>>> http://download.oracle.com/javase/1.5.0/docs/guide/vm/gc-ergonomics.html >>>>>> Java7: >>>>>> >>>>>> http://download.oracle.com/javase/7/docs/technotes/guides/vm/gc-ergonomics.html >>>>>> >>>>>> My choice of VM options for prevalent system servers is: >>>>>> ?-server >>>>>> ?-XX:MaxGCPauseMillis=500 >>>>>> ?-XX:GCTimeRatio=3 >>>>>> >>>>>> MaxGCPauseMillis=500 gives the VM a target of not pausing for more >>>>>> than 500 millis for GC. You can use less. It will simply increase the >>>>>> pressure on CPU usage and RAM. >>>>>> >>>>>> GCTimeRatio=3 will give the parallel garbage collector 25% of CPU (75% >>>>>> for the app) before it starts allocating more heap. The default is 99 >>>>>> which gives only 1% of CPU to the collector and 99% to the app. With >>>>>> prevalent systems the problem is normally not CPU but RAM, so it is >>>>>> good to give the collector ample CPU. >>>>>> >>>>>> Given the above, the VM will apply a pretty cool adaptive heap >>>>>> generation allocation strategy: >>>>>> >>>>>> "1. If the GC pause time is greater than the pause time goal then >>>>>> reduce the generations sizes to better attain the goal. >>>>>> 2. If the pause time goal is being met then consider the application's >>>>>> throughput goal. If the application's throughput goal is not being >>>>>> met, then increase the sizes of the generations to better attain the >>>>>> goal. >>>>>> 3. If both the pause time goal and the throughput goal are being met, >>>>>> then the size of the generations are decreased to reduce footprint." >>>>>> >>>>>> ;) >>>>>> >>>>>> Klaus >>>>>> PS: Naveen, did you answer Ralph's question on how big your heap will >>>>>> be? >>>>>> >>>>>> >>>>>> On Thu, Oct 13, 2011 at 9:05 AM, Diego Fincatto >>>>>> <[email protected]> wrote: >>>>>>> Maybe terracotta can help! >>>>>>> http://www.terracotta.org/products/bigmemory >>>>>>> >>>>>>> >>>>>>> On Thu, Oct 13, 2011 at 8:53 AM, Naveen Chawla >>>>>>> <[email protected]> >>>>>>> wrote: >>>>>>>> I agree, there's no way forcing garbage collection?is "pauseless" as >>>>>>>> such, >>>>>>>> I'm just unsure if it could be?a cheap workaround for "slow down >>>>>>>> now, >>>>>>>> save >>>>>>>> later". It turns out ordinary Java has garbage collector options?G1 >>>>>>>> and >>>>>>>> CMS, >>>>>>>> either of which may?altogether avoid?long pauses, I don't know. >>>>>>>> >>>>>>>> So I'm thinking G1 or CMS gc, with heap size fixed to the maximum >>>>>>>> comfortable RAM (unless G1 or CMS still?triggers long pauses with >>>>>>>> large >>>>>>>> memories). Anyone recommend different? >>>>>>>> >>>>>>>> On 13 October 2011 10:54, Ralph Johnson <[email protected]> wrote: >>>>>>>>> >>>>>>>>> If you want to collect more frequently, just make the size of your >>>>>>>>> memory partitions smaller. ? The only reason to ask for a >>>>>>>>> collection >>>>>>>>> is because you know that this is a good time to do the work, i.e. >>>>>>>>> you >>>>>>>>> aren't doing anything else. >>>>>>>>> >>>>>>>>> If you could get a pauseless g.c. by manual intervention then they >>>>>>>>> wouldn't be so hard to make. >>>>>>>>> >>>>>>>>> -Ralph >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> ------------------------------------------------------------------------------ >>>>>>>>> All the data continuously generated in your IT infrastructure >>>>>>>>> contains >>>>>>>>> a >>>>>>>>> definitive record of customers, application performance, security >>>>>>>>> threats, fraudulent activity and more. Splunk takes this data and >>>>>>>>> makes >>>>>>>>> sense of it. Business sense. IT sense. Common sense. >>>>>>>>> http://p.sf.net/sfu/splunk-d2d-oct >>>>>>>>> _______________________________________________ >>>>>>>>> To unsubscribe go to the end of this page: >>>>>>>>> http://lists.sourceforge.net/lists/listinfo/prevayler-discussion >>>>>>>>> _______________________________________________ >>>>>>>>> "Databases in Memoriam" -- http://www.prevayler.org >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> ------------------------------------------------------------------------------ >>>>>>>> All the data continuously generated in your IT infrastructure >>>>>>>> contains >>>>>>>> a >>>>>>>> definitive record of customers, application performance, security >>>>>>>> threats, fraudulent activity and more. Splunk takes this data and >>>>>>>> makes >>>>>>>> sense of it. Business sense. IT sense. Common sense. >>>>>>>> http://p.sf.net/sfu/splunk-d2d-oct >>>>>>>> _______________________________________________ >>>>>>>> To unsubscribe go to the end of this page: >>>>>>>> http://lists.sourceforge.net/lists/listinfo/prevayler-discussion >>>>>>>> _______________________________________________ >>>>>>>> "Databases in Memoriam" -- http://www.prevayler.org >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------------------------------------------------------ >>>>>>> All the data continuously generated in your IT infrastructure >>>>>>> contains a >>>>>>> definitive record of customers, application performance, security >>>>>>> threats, fraudulent activity and more. Splunk takes this data and >>>>>>> makes >>>>>>> sense of it. Business sense. IT sense. Common sense. >>>>>>> http://p.sf.net/sfu/splunk-d2d-oct >>>>>>> _______________________________________________ >>>>>>> To unsubscribe go to the end of this page: >>>>>>> http://lists.sourceforge.net/lists/listinfo/prevayler-discussion >>>>>>> _______________________________________________ >>>>>>> "Databases in Memoriam" -- http://www.prevayler.org >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------------------------------------------------------ >>>>>> All the data continuously generated in your IT infrastructure contains >>>>>> a >>>>>> definitive record of customers, application performance, security >>>>>> threats, fraudulent activity and more. Splunk takes this data and makes >>>>>> sense of it. Business sense. IT sense. Common sense. >>>>>> http://p.sf.net/sfu/splunk-d2d-oct >>>>>> _______________________________________________ >>>>>> To unsubscribe go to the end of this page: >>>>>> http://lists.sourceforge.net/lists/listinfo/prevayler-discussion >>>>>> _______________________________________________ >>>>>> "Databases in Memoriam" -- http://www.prevayler.org >>>>> >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> All the data continuously generated in your IT infrastructure contains a >>>>> definitive record of customers, application performance, security >>>>> threats, fraudulent activity and more. Splunk takes this data and makes >>>>> sense of it. Business sense. IT sense. Common sense. >>>>> http://p.sf.net/sfu/splunk-d2d-oct >>>>> _______________________________________________ >>>>> To unsubscribe go to the end of this page: >>>>> http://lists.sourceforge.net/lists/listinfo/prevayler-discussion >>>>> _______________________________________________ >>>>> "Databases in Memoriam" -- http://www.prevayler.org >>>>> >>>>> >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> All the data continuously generated in your IT infrastructure contains a >>>> definitive record of customers, application performance, security >>>> threats, fraudulent activity and more. Splunk takes this data and makes >>>> sense of it. Business sense. IT sense. Common sense. >>>> http://p.sf.net/sfu/splunk-d2d-oct >>>> _______________________________________________ >>>> To unsubscribe go to the end of this page: >>>> http://lists.sourceforge.net/lists/listinfo/prevayler-discussion >>>> _______________________________________________ >>>> "Databases in Memoriam" -- http://www.prevayler.org >>> >>> >>> ------------------------------------------------------------------------------ >>> All the data continuously generated in your IT infrastructure contains a >>> definitive record of customers, application performance, security >>> threats, fraudulent activity and more. Splunk takes this data and makes >>> sense of it. Business sense. IT sense. Common sense. >>> http://p.sf.net/sfu/splunk-d2d-oct >>> _______________________________________________ >>> To unsubscribe go to the end of this page: >>> http://lists.sourceforge.net/lists/listinfo/prevayler-discussion >>> _______________________________________________ >>> "Databases in Memoriam" -- http://www.prevayler.org >>> >>> >> >> >> >> ------------------------------ >> >> Message: 4 >> Date: Sat, 29 Oct 2011 04:24:29 +0530 >> From: Naveen Chawla <[email protected]> >> Subject: [Prevayler-discussion] Type-safe Prevayler, using generics >> To: "Open discussion about the Prevayler project." >> <[email protected]> >> Message-ID: >> <CAGs7EcUEhmQ1HA5xp27mmk+qBfxAipCaOaJ1YGYqKvmTNdc01Q@mail.gmail.com> >> Content-Type: text/plain; charset="iso-8859-1" >> >> Small point, but by using generics, Prevayler has complete type-safety minus >> casting. Took me longer than expected, but I've attempted this on Prevayler >> source. I submitted a "fork" on the prevayler git - >> https://github.com/Navigateur/prevayler - I'm not very good at git, but I >> think that's how you want contributions submitted. Needs run time testing. >> Demo and test code modified to match. Summary usage: >> >> instead of >> Prevayler prevayler >> use >> Prevayler<MyTypeToPrevail> prevayler >> >> and instead of >> PrevaylerFactory prevaylerFactory >> use >> PrevaylerFactory<MyTypeToPrevail> prevaylerFactory >> >> For your custom transactions/queries: >> replace >> implements Transaction{ >> with >> implements Transaction<MyTypeToPrevail>{ >> >> and >> implements TransactionWithQuery{ >> with >> implements TransactionWithQuery<MyTypeToPrevail, MyTypeToReturn>{ >> same for Query, SureTransactionWithQuery >> >> Then, you don't do any casting from Object to prevalent type, nor from >> ".execute" to return type, as these arrive in native form. >> ("MyTypeToPrevail" is compiler-checked as implementing Serializable in all >> the above cases) >> >> i.e. instead of >> (MyTypeToPrevail)prevalentSystem >> you just use >> prevalentSystem >> and instead of >> (MyTypeToReturn)prevayler.execute(... >> you just use >> prevayler.execute(... >> >> It might even run faster due to lack of run time casting on each >> transaction/query, who knows (not me). Hopefully you can test, and as soon >> as it works immediately release it as an update, or at least an immediate >> parallel choice as I really want this version now but with your genuine >> backing. >> -------------- next part -------------- >> An HTML attachment was scrubbed... >> >> ------------------------------ >> >> ------------------------------------------------------------------------------ >> The demand for IT networking professionals continues to grow, and the >> demand for specialized networking skills is growing even more rapidly. >> Take a complimentary Learning@Cisco Self-Assessment and learn >> about Cisco certifications, training, and career opportunities. >> http://p.sf.net/sfu/cisco-dev2dev >> >> ------------------------------ >> >> _______________________________________________ >> To unsubscribe go to the end of this page: http://lists.sourceforge.net/lists/listinfo/prevayler-discussion >> _______________________________________________ >> "Databases in Memoriam" -- http://www.prevayler.org >> >> >> End of Prevayler-Discussion Digest, Vol 43, Issue 8 >> *************************************************** >> > ------------------------------------------------------------------------------ > Get your Android app more play: Bring it to the BlackBerry PlayBook > in minutes. BlackBerry App World™ now supports Android™ Apps > for the BlackBerry® PlayBook™. Discover just how easy and simple > it is! http://p.sf.net/sfu/android-dev2dev > _______________________________________________ > To unsubscribe go to the end of this page: http://lists.sourceforge.net/lists/listinfo/prevayler-discussion > _______________________________________________ > "Databases in Memoriam" -- http://www.prevayler.org ------------------------------------------------------------------------------ Get your Android app more play: Bring it to the BlackBerry PlayBook in minutes. BlackBerry App World™ now supports Android™ Apps for the BlackBerry® PlayBook™. Discover just how easy and simple it is! http://p.sf.net/sfu/android-dev2dev _______________________________________________ To unsubscribe go to the end of this page: http://lists.sourceforge.net/lists/listinfo/prevayler-discussion _______________________________________________ "Databases in Memoriam" -- http://www.prevayler.org