<!doctype html>
<html>
 <head> 
  <meta charset="UTF-8"> 
 </head>
 <body> 
  <div> 
   <br> 
  </div> 
  <blockquote type="cite"> 
   <div>
     Charles Monteiro via Glass <glass@lists.gemtalksystems.com> hat am 18.01.2022 16:03 geschrieben: 
   </div> 
   <div> 
    <br> 
   </div> 
   <div> 
    <br> 
   </div> 
   <div class="WordSection1"> 
    <p class="MsoNormal">Hi all,</p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal">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.</p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal"><span class="Heading2Char"><span style="font-size: 13.0pt;">Context</span></span>:</p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal">I wish to evaluate Gemstone/S at first for some more tangential needs that are currently targeted for Mongo.</p> 
    <p class="MsoNormal">Our core product actually runs over Oracle and soon over any RDMS but for practical purposes we are targetting Postgres.</p> 
    <p class="MsoNormal">However, potentially the bigger need.</p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal">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.</p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal">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.</p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal">Anyhow, to cut to the chase.</p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal"><span class="Heading2Char"><span style="font-size: 13.0pt;">Objectives</span></span>:</p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal">I’m not interested in building a Seaside app that uses Gemstone for its persistence.</p> 
    <p class="MsoNormal">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.</p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal">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.</p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal">So:</p> 
    <p class="MsoNormal"><br></p> 
    <ol style="margin-top: 0in;" type="1" start="1"> 
     <li style="margin-left: 0in; mso-list: l0 level1 lfo1;" class="MsoListParagraph">How do I talk to Gemstone from Pharo ?</li> 
     <ol style="margin-top: 0in;" type="a" start="1"> 
      <li style="margin-left: 0in; mso-list: l0 level2 lfo1;" class="MsoListParagraph">I believe that Zinc can actually run on Gemstone so json/http(s) would be one way ? Any other way ? best way ?</li> 
     </ol> 
    </ol> 
   </div> 
  </blockquote> 
  <div>
    We only use REST-like APIs ... 
   <br> 
  </div> 
  <blockquote type="cite"> 
   <div class="WordSection1"> 
    <ol style="margin-top: 0in;" type="1" start="2"> 
     <li style="margin-left: 0in; mso-list: l0 level1 lfo1;" class="MsoListParagraph">Is there a notification / push mechanism now in place e.g. change to a Gemstone collection could be notified to interested parties (Pharo)</li> 
     <ol style="margin-top: 0in;" type="a" start="1"> 
      <li style="margin-left: 0in; mso-list: l0 level2 lfo1;" class="MsoListParagraph">Is there a web socket implementation?</li> 
      <li style="margin-left: 0in; mso-list: l0 level2 lfo1;" class="MsoListParagraph">Any other messaging implementation ? MQTT ? RabbitMQ etc ?</li> 
     </ol> 
    </ol> 
   </div> 
  </blockquote> 
  <div>
    I actually asked this also some days ago, but I assume - none. We used in our product a Gemstone/S to ZMQ bridge and then a Python written ZMQ to WebSocket server - this is very stable running with lots of users - but one always has to consider license restrictions, I do as much as I can do to put work from the pure Gemstone/S server to other languages (and other processes not running on the Gemstone cores). 
   <br> 
  </div> 
  <blockquote type="cite"> 
   <div class="WordSection1"> 
    <ol style="margin-top: 0in;" type="1" start="3"> 
     <li style="margin-left: 0in; mso-list: l0 level1 lfo1;" class="MsoListParagraph">GemConnect / Postgres , would there be a separate additional license fee ?</li> 
    </ol> 
   </div> 
  </blockquote> 
  <div>
    With Gemstone/S 3.6.3 there is a free PostgreSQL Connector available ...  its on my list to use for our product. 
   <br> 
  </div> 
  <blockquote type="cite"> 
   <div class="WordSection1"> 
    <ol style="margin-top: 0in;" type="1" start="4"> 
     <li style="margin-left: 0in; mso-list: l0 level1 lfo1;" class="MsoListParagraph">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.</li> 
    </ol> 
   </div> 
  </blockquote> 
  <div>
    This depends on your hardware, on your database size ... but a downtime is normally not needed. 
   <br> 
  </div> 
  <blockquote type="cite"> 
   <div class="WordSection1"> 
    <ol style="margin-top: 0in;" type="1" start="5"> 
     <li style="margin-left: 0in; mso-list: l0 level1 lfo1;" class="MsoListParagraph">I assume that for development use that one can install Gemstone under WSL ? If so any issues to be aware of ?</li> 
    </ol> 
   </div> 
  </blockquote> 
  <div>
    You can get a free version - but this had lots of limitations, in terms of database size, number of concurrently  processes to connect to the stone. You may get a database license by registering at GemtalkSystems. To say it with the Beatles: Limitations "here, there and everywhere". Thats the traditional license. 
   <br> 
  </div> 
  <div class="default-style"> 
   <br> 
  </div> 
  <div class="default-style">
    You can even get a GemBuilder license ... 
   <br> 
  </div> 
  <blockquote type="cite"> 
   <div class="WordSection1"> 
    <ol style="margin-top: 0in;" type="1" start="6"> 
     <li style="margin-left: 0in; mso-list: l0 level1 lfo1;" class="MsoListParagraph">Sparkle is the new IDE ? but I see there’s also IoDE ?</li> 
    </ol> 
    <p class="MsoNormal"></p> 
   </div> 
  </blockquote> 
  <div>
    And Jade ... a more traditional Smalltalk IDE. 
   <br> 
  </div> 
  <blockquote type="cite"> 
   <div class="WordSection1"> 
    <p class="MsoNormal">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 ?</p> 
    <p class="MsoNormal">A cursory review of the Glass posts seem Seaside centric.</p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal">Thanks in advance,</p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal"><br></p> 
    <p class="MsoNormal"><strong><span style="font-family: 'Arial',sans-serif;">Charles A. Monteiro<br>Chief Technology Officer<br>Datasoft, Inc</span></strong></p> 
    <p class="MsoNormal"><strong><span style="font-family: 'Arial',sans-serif;">Phone: 347-853-7349</span></strong></p> 
    <p class="MsoNormal"><strong><span style="font-family: 'Arial',sans-serif;">Web:<a href="http://www.tradeblazer.com"><span style="color: blue;">tradeblazer.com</span></a></span></strong><br></p> 
    <p class="MsoNormal"><img src="cid:image001.png@01D80C4D.0EDFC230" id="Picture_x0020_2" style="width: 1.9895in; height: .5in;" width="191" height="48" border="0"></p> 
    <p class="MsoNormal"><br></p> 
   </div>_______________________________________________ Glass mailing list Glass@lists.gemtalksystems.com https://lists.gemtalksystems.com/mailman/listinfo/glass 
  </blockquote> 
 </body>
</html>