Hi, Nianjun.
BTW, about the single proxy bottleneck, we will try to resolve it with proxies 
cluster in control-panel module, you can track and join it. 
>5. ss-proxy is the first version, we will plug ss-scaling into ss-jdbc in the 
>future, so don't warry about the proxy bottleneck.





At 2020-06-15 15:53:15, "lucas" <[email protected]> wrote:
>Hi, Sun Nianjun:
>
>
>Think you for your suggesions.
>
>
>1. Your understanding is pretty good. Change `offer` to `put` is a good idea, 
>you can do it. And I think queue size defalut as 10000 is ok, if it's too big, 
>I'm a litter warry memory. as you know, it is multithreading task andconsumer 
>can change it by configuration.
>
>
>2. Breakpoint resume is a very important function, and there is other guy do 
>it now.
>
>
>3. You are right, we are think about to use elastic-job to process scaling job.
>
>
>4. You suggesion is very good, but we want all put all other functions (such 
>as encryption) into ss-jdbc, and scaling is only scaling.
>
>
>5. ss-proxy is the first version, we will plug ss-scaling into ss-jdbc in the 
>future, so don't warry about the proxy bottleneck.
>
>
>6. `/scaling/job/start` supports json formats, see: 
>org.apache.shardingsphere.shardingscaling.web.HttpServerHandler#startJob
>
>
>You suggesions are very visionary. there are lot of things we should do it in 
>the future. and welcome to do it together.
>
>
>
>
>-------- Forwarding messages --------
>
>From: "Sun Nianjun" <[email protected]>
>Date: 2020-06-14 23:54:38
>To:  "[email protected]" <[email protected]>
>Subject: some suggesions for sharding scaling
>hi , commuity
>
>    since last week, I got some experience of using sharding scaling, and  I 
> have summarized some suggestions as follows, hope to discuss with the 
> community :
>
>
>  1.   dumper, importer, channel is a typical producer-consumer pattern, 
> mainly used BlockingQueue in Java,and I adjusted the details of the use a 
> little in my actual experience: I changed the 'offer' to 'put' in 
> MemoryChannel , change the queue size a little bit larger, because the dumper 
> will stuffed the queue full very fast, and dumper is relative slow, even 
> there is a timeout limitation for method `offer`, it's very easy to cause an 
> RuntimeException by a failed offer.
>  2.  I’m thinking about how to add a breakpoint resume function to scaling, 
> because once there is a problem during the migration process, it is very 
> troublesome。maybe we could record the scaling position through local log or 
> something like that, we have to make sure the scaling could resume through 
> breakpoint after broken down.
>  3.  since the elastic job is resurrected, why not seperate and handle the 
> job in scaling by elastic job ? a job system must be more Robust and Stable
>  4.  It's very common usage in shardingsphere to load an implementaion for 
> interface, that's SPI . I think the current dumper and importer should exact 
> as default implementation, and add more implementions and load by SPI . BTW , 
> importer is not just focus on import data into database, maybe for encryption.
>  5.  I believe proxy will be the bottleneck for current architecture , event 
> I tried to scaling more than 40 million data in a mysql to 8 new shard , 
> sharding proxy is a little bit 'slow' , if we prepare to scale billions data 
> from 16 sharding to 32 shard , I don't think proxy could withstand such 
> pressure,we may use sharding jdbc for scaling to reshard.
>  6.  currently, the parameters for `/scaling/job/start` are in yaml formats, 
> it's ok if that's for API invocation , but its not friendly for 
> debugging,should we add some function to translate yaml configuration to json 
> format in API invocation ?
>
>shardingsphere has a very active and open community ,  I hope the metors could 
>give some suggestions for that .
>
>Regards
>
>
>
>
>
> 

Reply via email to