$30 off During Our Annual Pro Sale. View Details »

Intro to Scala Server Toolkit

Intro to Scala Server Toolkit

Introduction to Scala Server Toolkit (https://github.com/avast/scala-server-toolkit). Reasons why the project was created and how it can help you build resource-safe principled functional microservices.

Jakub Janeček

January 23, 2020
Tweet

More Decks by Jakub Janeček

Other Decks in Programming

Transcript

  1. S al S rv r oo ki
    J ku J neče
    F nc io al VM ee up
    J nu ry 23, 2020
    g .c /a /s -s -t

    View Slide

  2. G ne is (H st ry)
    4 U S A s a 2 .
    4 T u s :
    4 S b J .
    4 I i S .
    4 F n S .
    4 L i -h s n h p .
    4 N s f g e s s n .

    View Slide

  3. I su s
    4 D c e - c e g u e
    a h.
    4 G n r s .

    View Slide

  4. S lu io
    4 U c e s c .
    4 U h a c n /l e r i i .
    4 P m i t p .
    4 I S S T a b .

    View Slide

  5. D si n
    4 M .
    4 L n d n .
    4 F n P m .
    4 T f c g n n p r e
    m e .
    4 N e o d n i o .
    4 S i.

    View Slide

  6. S bp oj ct
    4 D t g r
    s e b
    d n .
    4 E :
    4 pureconfig
    4 http4s-server-blaze
    B nd es
    4 C s e
    b t r o
    e u .
    4 bundle-zio-http4s-
    blaze

    View Slide

  7. W at s va la le?
    4 h s /c
    4 J - c , r , t p
    4 d (J )
    4 C r (o c D x d )
    4 F
    4 M t - J , S
    4 P g
    4 B o I n M

    View Slide

  8. M du e
    object ComponentModule {
    def make[F[_]](config: ComponentConfig, someDependency: Dependency): Resource[F, Component] = {
    !!"
    }
    }

    View Slide

  9. M du e om os ti n
    for {
    componentA !" ComponentAModule.make[Task]
    componentB !" ComponentBModule.make[Task](componentA)
    componentC !" ComponentCModule.make[Task](componentA, componentB)
    } yield componentC

    View Slide

  10. D mo

    View Slide

  11. S mm ry

    View Slide

  12. Q es io s?
    T an y u.
    A e p r o U h.

    View Slide