[Glass] How to start an eval of Gemsatone/S

Norm Green norm.green at gemtalksystems.com
Thu Jan 20 09:58:49 PST 2022


Martin/ Charles,

I've started working on an open source package that will let GemStone 
talk to Rabbitmq. It will be awhile before I have anything to publish.

BTW, the whole amqp space is quite a mess. amqp 0.9 (rabbitmq) is 
incompatible with amqp 1.0 (used by MS Azure and other things).

Norm


On 1/20/2022 6:28 AM, Charles Monteiro via Glass wrote:
>
> James:
>
> Thank you for your responses, to fine tune a bit:
>
> 1. To talk to GemStone from Pharo you can use the GCI library (with 
> something like SparkleFFI (https://github.com/GemTalk/SparkleFFI) or 
> something that talks directly to a Gem that has its own API (such as 
> https://github.com/jgfoster/WebGS).
>
> What I mean is stuff like setting transaction blocks within the client 
> process i.e. what I was used to with GemBuilder/VW , never mind the 
> use of forwarders etc i.e. which used the underlying GCI behind a 
> local proxy.
>
> This might not be necessary upon further thought i.e. that was just 
> the model I became used to from working with GemStone in the past. I 
> think what’s there already for example your WebGS should work fine and 
> its more in step with what I have been doing with for example JVM 
> based microservices.
>
> 2. A Gem can be notified if an object changes and then it could notify 
> a client. I believe that RemoteServiceReplication 
> (https://github.com/GemTalk/RemoteServiceReplication) will 
> (eventually) provide synchronization between GemStone and Pharo, but 
> I’m not able to answer questions about it. With respect to supporting 
> Web Sockets, WebGS (see #1) does have that capability. I’m not aware 
> of any other messaging implementations.
>
> Yes, I remember this feature , very useful, but indeed I’m referring 
> to how to notify the client, I understand you have WebSockets but I’m 
> more inclined to use some sort of pub/sub mechanism , not sure how to 
> glue it from GemStone yet but I’m guessing it should not be too much 
> work. RemoteServiceReplication looks interesting and I can see how it 
> works for tooling support not sure yet if that would work for my 
> scenarios i.e. I don’t necessarily want a counterpart local object, maybe.
>
> 4. The performance for MFC has _vastly_ improved. A job that took 
> several days can now be done in a few hours with minimal disruption on 
> regular operation. It is now very realistic to plan for 24x7 uptime (I 
> understand that one customer schedules 1 day per year of downtime for 
> upgrades, etc.).
>
> 😊, I’m very glad to hear that, yes I exaggerated a bit in our case, 
> all sorts of bank holidays and weekends, although I was really 
> counting on MFC running under 18 hours which is what at one point in 
> time is what we were encountering at BUG.
>
> I am already registered for Martin’s meetup presentation.
>
> Thank you for your time in answering my questions.
>
> I do look forward to playing again with the database that I was weaned 
> on which has made me biased and disgusted with just about everything 
> else and in particular RDMS 😊
>
> *Charles A. Monteiro
> Chief Technology Officer
> Datasoft, Inc*
>
> *Phone: 347-853-7349*
>
> *Web:tradeblazer.com <http://www.tradeblazer.com>*
>
> **
>
> *From:* James Foster <Smalltalk at JGFoster.net>
> *Sent:* Thursday, January 20, 2022 3:25 AM
> *To:* charles at tradeblazer.com
> *Cc:* GLASS Mailing List <glass at lists.gemtalksystems.com>
> *Subject:* Re: [Glass] How to start an eval of Gemsatone/S
>
> Hi Charles,
>
> In response to your specific question:
>
> 1. To talk to GemStone from Pharo you can use the GCI library (with 
> something like SparkleFFI (https://github.com/GemTalk/SparkleFFI) or 
> something that talks directly to a Gem that has its own API (such as 
> https://github.com/jgfoster/WebGS).
>
> 2. A Gem can be notified if an object changes and then it could notify 
> a client. I believe that RemoteServiceReplication 
> (https://github.com/GemTalk/RemoteServiceReplication) will 
> (eventually) provide synchronization between GemStone and Pharo, but 
> I’m not able to answer questions about it. With respect to supporting 
> Web Sockets, WebGS (see #1) does have that capability. I’m not aware 
> of any other messaging implementations.
>
> 3. As noted by others, GemConnect for Postgres 
> (https://github.com/GemTalk/GemConnect-for-Postgres) is available 
> under the MIT license.
>
> 4. The performance for MFC has _vastly_ improved. A job that took 
> several days can now be done in a few hours with minimal disruption on 
> regular operation. It is now very realistic to plan for 24x7 uptime (I 
> understand that one customer schedules 1 day per year of downtime for 
> upgrades, etc.).
>
> 5. GemStone runs fine under WSL 2. It runs under WSL 1 but required a 
> special keyfile to get around WSL 1 bugs.
>
> 6. For an IDE you can use Topaz (for old-school vim/gdb users), GBS 
> (if you have a license for VA or VW), Jadeite 
> (https://github.com/GemTalk/Jadeite or its predecessor, Jade 
> (https://github.com/jgfoster/Jade)), or experiment with Sparkle 
> (https://github.com/GemTalk/Sparkle). To learn more about Sparkle I 
> suggest you watch Martin McClure’s upcoming presentation 
> (https://www.meetup.com/UKSTUG/events/282299228/).
>
> James
>
>
>
>     On Jan 18, 2022, at 7:03 AM, Charles Monteiro via Glass
>     <glass at lists.gemtalksystems.com> wrote:
>
>     Hi all,
>
>     Not sure if this is the right spot to ask,let me know if not, this
>     is more of sales evaluation i.e. that’s the intent.
>
>     Context:
>
>     I wish to evaluate Gemstone/S at first for some more tangential
>     needs that are currently targeted for Mongo.
>
>     Our core product actually runs over Oracle and soon over any RDMS
>     but for practical purposes we are targetting Postgres.
>
>     However, potentially the bigger need.
>
>     From my FPL and Brooklyn Union Gas days I became quite familiar
>     with using GemBuilder for VW however instead I want to engage
>     Gemstone from Pharo and I understand that not to work the same way.
>
>     Recently , (yesterday) I discovered Sparkle which led me to
>     discovering SparkleFFI , so there’s apparently some efforts under
>     way to provide comm from Pharo to Gemstone i.e. more akin to
>     Gembuilder/VW.
>
>     Anyhow, to cut to the chase.
>
>     Objectives:
>
>     I’m not interested in building a Seaside app that uses Gemstone
>     for its persistence.
>
>     Rather, very thin , quite dumb Svelte/JS UIs will talk to Pharo
>     microservice(s) which in turn will talk to Gemstone i.e. that’s
>     the hope.
>
>     I would prefer some rpc mechanism where transaction boundaries are
>     controlled from Pharo but I”ll be happy with whatever mechanism I
>     can use to pass objects to Gemstone.
>
>     So:
>
>      1. How do I talk to Gemstone from Pharo ?
>
>          1. I believe that Zinc can actually run on Gemstone so
>             json/http(s) would be one way ? Any other way ? best way ?
>
>      2. Is there a notification / push mechanism now in place e.g.
>         change to a Gemstone collection could be notified to
>         interested parties (Pharo)
>
>          1. Is there a web socket implementation?
>          2. Any other messaging implementation ? MQTT ? RabbitMQ etc ?
>
>      3. GemConnect / Postgres , would there be a separate additional
>         license fee ?
>      4. Has the performance of markForCollection changed much in all
>         of these years i.e. does one have to allocate downtime ? i.e.
>         what if the app actually needed to run 24x7, what are the
>         accommodations for said scenario under current Gemstone/S.
>      5. I assume that for development use that one can install
>         Gemstone under WSL ? If so any issues to be aware of ?
>      6. Sparkle is the new IDE ? but I see there’s also IoDE ?
>
>     Finally , given all of the above , and never mind Gemstone/ S
>     setup itself , is there some doc that illustrates a simple hello
>     world scenario where a Pharo image is sending to Gemstone objects
>     for persistence ?
>
>     A cursory review of the Glass posts seem Seaside centric.
>
>     Thanks in advance,
>
>     *Charles A. Monteiro
>     Chief Technology Officer
>     Datasoft, Inc*
>
>     *Phone: 347-853-7349*
>
>     *Web:tradeblazer.com <http://www.tradeblazer.com/>*
>
>     <image001.png>
>
>     _______________________________________________
>     Glass mailing list
>     Glass at lists.gemtalksystems.com <mailto:Glass at lists.gemtalksystems.com>
>     https://lists.gemtalksystems.com/mailman/listinfo/glass
>     <https://lists.gemtalksystems.com/mailman/listinfo/glass>
>
>
> _______________________________________________
> Glass mailing list
> Glass at lists.gemtalksystems.com
> https://lists.gemtalksystems.com/mailman/listinfo/glass
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gemtalksystems.com/mailman/archives/glass/attachments/20220120/26edb632/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.png
Type: image/png
Size: 8286 bytes
Desc: not available
URL: <http://lists.gemtalksystems.com/mailman/archives/glass/attachments/20220120/26edb632/attachment-0001.png>


More information about the Glass mailing list