Hi Radu/jinkui,

Thanks for your input!

I filed a master task to track discussion on this front
https://issues.apache.org/jira/browse/FLINK-6085

Since this is a very broad topic, I would like to kick start with a tiny
deployment helper project.
What it try to address is to leverage various of service continuous
deployment pipelines in various of companies (amazon/facebook/uber) and
deploy/update jobmanager/taskmanagers as a high available micro service
(via zk and aws s3)

I run this service in prod for a month (2 dc, 2 job managers per dc, 8-64
task managers per dc depending on workload) for testing usage.
Haven't seen problem so far.

https://github.com/chenqin/flink-jar

Thanks,
Chen




On Thu, Mar 16, 2017 at 2:05 AM, Radu Tudoran <radu.tudo...@huawei.com>
wrote:

> Hi,
>
> I propose that we consider also the type of connectivity to be supported
> in the Flink API Gateway. I would propose to support a couple of calls
> option to ingest also events. I am thinking of:
> - callback mechanism
> - REST
> - RPC
>
>
>
>
> -----Original Message-----
> From: Chen Qin [mailto:qinnc...@gmail.com]
> Sent: Wednesday, March 15, 2017 7:31 PM
> To: dev@flink.apache.org
> Subject: Re: Flink as a Service (FaaS)
>
> Hi jinkui,
>
> I haven't go down to that deep yet. Sounds like you have better idea what
> needs to be in place.
> Can you try to come up with a doc and may be draw some diagram so we can
> discuss from there?
>
> My original intention is to discuss general function gap of running lots
> of micro services(like thousands of services as I observed). I feel flink
> low level has potential to fit in to highly critical services space and do
> good job fill those gaps.
>
>
> mobile apps
> -----------------------------------
> front end request router
> --------------------------------------
> service A    | service B  | service C
> database A |database B| database C
> ---------------------------------------
>              Flink as a service
> ----------------------------------------
> service    D | service    E |service F
> database D | database E |database F
>
> Thanks,
> Chen
>
>
>
>
>
> On Tue, Mar 14, 2017 at 12:01 AM, shijinkui <shijin...@huawei.com> wrote:
>
> > Hi, Chen Qin
> >
> > We also met your end-to-end use case. A RPC Source and Sink such as
> > netty source sink can fit such requirements. I’ve submit a natty
> > module in bahir-flink project which only a demo.
> > If use connector source instead of Kafka, how do we make the data
> > persistent? One choice is distributedlog project developed by twitter.
> >
> > The idea of micro service is very good. Playframework is better choice
> > to provide micro-service of Flink instead of Flink Monitor which
> > implemented by netty.
> > Submit Flink job in the Mesos cluster, at the same time deploy the
> > micro-service by marathon to the same Mesos cluster, and enable
> > mesos-dns for service discovery.
> >
> > The the micro-service can be a API Gateway for:
> > 1. receiving data from device
> > 2. Sending the data to the Flink Job Source(Netty Source with
> > distributedlog)
> > 3. At same time, the sink send the streaming result data to the API
> > Gateway 4. API Gateway support streaming invoke: send the sink result
> > data to the device channel
> >
> > So this plan can guarantee the end-user invoke the service
> > synchronized,
> > and don’t care about Flink Job’s data processing.
> >
> > By the way, X as a Service actually is called by SAAS/PAAS in the
> > cloud platform, such as AWS/Azure. We can call it Flink micro
> > service.:)
> >
> > Best Regards
> > Jinkui Shi
> >
> > 在 2017/3/14 下午2:13, "Chen Qin" <qinnc...@gmail.com> 写入:
> >
> > >Hi there,
> > >
> > >I am very happy about Flink 1.2 release. It was much more robust and
> > >feature rich compare to previous versions. In the following section,
> > >I would like to discuss a non typical use case in flink community.
> > >
> > >With ever increasing popularity of micro services[1] to scale out
> > >popular online services. Various aspect of source of truth is stored
> > >(a.k.a
> > >partitioned) behind various of service rpc endpoints. There is a
> > >general need of managing events traversal and enrichment throughout
> > >org SOA systems. (SOA) It is no longer part of data infrastructure
> > >scope, where traditionally known as batched slow and analytic(small %
> lossy is okay).
> > >Flink might also find a fit into core services as well.
> > >
> > >It's part of online production services, serving directly from mobile
> > >client events more importantly services database post commit logs and
> > >orchestrate adhoc stream toplogies to transform and transfer between
> > >online services(usually backed by databases and serving request
> > >response with stragent latency requirement)
> > >
> > >Use case:
> > >user updates comes from mobile client via kafka topic, which consumed
> > >both by user service as well as streaming job. When streaming job do
> > >RPC and trying to enrich user information, it cause race condition
> > >which turns out database persistence is not as speedy as streaming job.
> > >
> > >In general, streaming job should consume user service commit logs
> > >instead of karfka topic which defines as source of truth in term of
> > >user information. Is there a general way to couple with these issues?
> > >
> > >P.S I was able to build task manager as jar package and deployed to
> > >production environment. Instead of using YARN to manage warehouse
> > >machines.
> > >Utilize same deployment environment as other online services as
> > >docker. So far, it seems running smoothly.
> > >
> > >Thanks,
> > >Chen
> > >
> > >
> > >[1] https://en.wikipedia.org/wiki/Microservices
> > >[2] https://martinfowler.com/eaaDev/EventSourcing.html
> >
> >
>

Reply via email to