Page 110 - Yazılım Teknolojileri Araştırma Bülteni 2023
P. 110

110 | RapidRows: Postgres için Kolay API Server




           WebSocket ve SSE Üzerinden Bildirimler






           RapidRows, PostgreSQL kanallarına gönderilen bildirimleri WebSocket ve Server Sent Events‘e

           iletebilir.  RapidRows  terminolojisinde,  Websocket  ve  SSE  uç  noktaları  akış  (stream)  olarak
           adlandırılır. Herhangi bir sayıda istemci, tek bir websocket/sse akışına bağlanabilir. NOTIFY veya
           pg_notify() kullanılarak gönderilen her bildirim akışa bağlı istemcilere gönderilecektir.


            version: ‘1’
            streams:

            - uri: ‘/new_payments’
              type: ‘websocket’
              datasource: ‘pagila’
              channel: ‘payment_received’
            datasources:
            - name: ‘pagila’
              dbname: ‘pagila’




























           Planlanmış Işler





           RapidRows, planlanmış işleri (scheduled job) çalıştırmak için CRON benzeri bir arka plan programı
           sağlar.  Benzer  çözümlerin  aksine  veri  tabanı  eklenti  kurulumu  gerektirmez  ve  veri  tabanında
           veri depolamaz. SQL ifadeleri ya da JavaScript kodu ile bir iş tanımlanarak CRON söz dizimi ile
           veya tekrarlama aralığı @every X şeklinde verilip planlamış iş tanımı yapılabilir. X, saat, dakika ve
           saniye veya 10h3m5s gibi hepsi bir arada kullanılabilir. Uç noktalara benzer şekilde, planlanmış

           iş  tanımında  kullanılan  SQL  deyimleri  işlem  seçeneklerine  ve  bir  zaman  aşımına  sahip  olabilir.
           JavaScript kullanarak gelecek ay için bölümlendirme (partition) oluşturan bir planlanmış iş örneği:
   105   106   107   108   109   110   111   112   113   114   115