You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dolphinscheduler.apache.org by GitBox <gi...@apache.org> on 2021/10/27 06:51:34 UTC

[GitHub] [dolphinscheduler] CalvinKirs opened a new issue #6612: [Feature][SPI] Optimize SPI

CalvinKirs opened a new issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612


   ### Search before asking
   
   - [X] I had searched in the [issues](https://github.com/apache/dolphinscheduler/issues?q=is%3Aissue) and found no similar feature requirement.
   
   
   ### Description
   
   At present, DolphinScheduler has customized a set of ClassLoader mechanism. This flexible mechanism can solve many problems, such as class conflicts and multi-version isolation. (These loaders are parallel and have no dependency relationship. A plug-in can use version 1.0 of a.jar, and plug-in B can use version 2.0 of a.jar, because of the fully qualified name of a class and the loading of the class The two loader together form the unique identification of this class in the JVM)
   
   The flexible definition of the loading mechanism of the classloader allows us to do plug-in extension related work better and more assured, which is more suitable for task plug-ins such as complex plug-in development.
   
   
   As for the registration center and alarm center, which are relatively independent and simple to rely on, we hope to provide a simpler way. Using Java's native SPI extension method, users do not need to do too many plug-in related configurations, including packaging configuration, plug-in directory configuration, etc. , Just implement the plug-in API (we can extract a layer of API, all plug-ins need to implement each interface of the API)
   What do you think?
   
   ### Use case
   
   no
   
   ### Related issues
   
   no
   
   ### Are you willing to submit a PR?
   
   - [X] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] github-actions[bot] commented on issue #6612: [Feature][SPI] Optimize SPI

Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612#issuecomment-952594797


   Hi:
   * Thank you for your feedback, we have received your issue, Please wait patiently for a reply.
   * In order for us to understand your request as soon as possible, please provide detailed information、version or pictures.
   * If you haven't received a reply for a long time, you can subscribe to the developer's email,Mail subscription steps reference https://dolphinscheduler.apache.org/zh-cn/community/development/subscribe.html ,Then write the issue URL in the email content and send question to dev@dolphinscheduler.apache.org.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] github-actions[bot] commented on issue #6612: [Feature][SPI] Optimize the SPI mechanism to make it more convenient for users to extend the plug-in

Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612#issuecomment-988364067


   This issue has been automatically marked as stale because it has not had recent activity for 30 days. It will be closed in next 7 days if no further activity occurs.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] CalvinKirs commented on issue #6612: [Feature][SPI] Optimize the SPI mechanism to make it more convenient for users to extend the plug-in

Posted by GitBox <gi...@apache.org>.
CalvinKirs commented on issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612#issuecomment-952785843


   > > > Hi @CalvinKirs I'm a little confused about that is it going to be the same problem for the registration center and alarm center if we use Java native SPI, such as class conflicts and multi-version isolation?
   > > 
   > > 
   > > This kind of situation usually occurs in complex plugs-in, and it is mandatory to rely on two versions of the same jar. Such as our task module.
   > > But for simple modules, this is controllable. I see that other projects do not have any major problems in the registry, but the alarm is actually simpler, nothing more than HTTP or other more complicated communication methods, but the dependence is usually stable.
   > > What do you think?
   > 
   > I think it's OK, and is it easy to swith another SPI way if we want it?
   
   Of course, this is just a modification of the plug-in loading method, and user extension plug-ins do not need to care.:)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] caishunfeng commented on issue #6612: [Feature][SPI] Optimize the SPI mechanism to make it more convenient for users to extend the plug-in

Posted by GitBox <gi...@apache.org>.
caishunfeng commented on issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612#issuecomment-952746596


   Hi @CalvinKirs 
   I'm a little confused about that is it going to be the same problem for the registration center and alarm center if we use Java native SPI, such as class conflicts and multi-version isolation?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] github-actions[bot] commented on issue #6612: [Feature][SPI] Optimize the SPI mechanism to make it more convenient for users to extend the plug-in

Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612#issuecomment-995316221


   This issue has been closed because it has not received response for too long time. You could reopen it if you encountered similar problems in the future.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] CalvinKirs edited a comment on issue #6612: [Feature][SPI] Optimize the SPI mechanism to make it more convenient for users to extend the plug-in

Posted by GitBox <gi...@apache.org>.
CalvinKirs edited a comment on issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612#issuecomment-952765662


   > Hi @CalvinKirs I'm a little confused about that is it going to be the same problem for the registration center and alarm center if we use Java native SPI, such as class conflicts and multi-version isolation?
   
   This kind of situation usually occurs in complex plugs-in, and it is mandatory to rely on two versions of the same jar. Such as our task module.
   
   But for simple modules, this is controllable. I see that other projects do not have any major problems in the registry, but the alarm is actually simpler, nothing more than HTTP or other more complicated communication methods, but the dependence is usually stable.
   
   What do you think?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] caishunfeng commented on issue #6612: [Feature][SPI] Optimize the SPI mechanism to make it more convenient for users to extend the plug-in

Posted by GitBox <gi...@apache.org>.
caishunfeng commented on issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612#issuecomment-952773402


   > > Hi @CalvinKirs I'm a little confused about that is it going to be the same problem for the registration center and alarm center if we use Java native SPI, such as class conflicts and multi-version isolation?
   > 
   > This kind of situation usually occurs in complex plugs-in, and it is mandatory to rely on two versions of the same jar. Such as our task module.
   > 
   > But for simple modules, this is controllable. I see that other projects do not have any major problems in the registry, but the alarm is actually simpler, nothing more than HTTP or other more complicated communication methods, but the dependence is usually stable.
   > 
   > What do you think?
   
   I think it's OK, and is it easy to swith another SPI way if we want it?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] caishunfeng removed a comment on issue #6612: [Feature][SPI] Optimize the SPI mechanism to make it more convenient for users to extend the plug-in

Posted by GitBox <gi...@apache.org>.
caishunfeng removed a comment on issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612#issuecomment-952742790


   Hi, @CalvinKirs 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] caishunfeng commented on issue #6612: [Feature][SPI] Optimize the SPI mechanism to make it more convenient for users to extend the plug-in

Posted by GitBox <gi...@apache.org>.
caishunfeng commented on issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612#issuecomment-952742790


   Hi, @CalvinKirs 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] ruanwenjun commented on issue #6612: [Feature][SPI] Optimize the SPI mechanism to make it more convenient for users to extend the plug-in

Posted by GitBox <gi...@apache.org>.
ruanwenjun commented on issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612#issuecomment-962595909


   This issue might be separate to three sub-task
   - Add SPI extension loader
   - Change registry plugin module use SPI extension loader
   - Change alert plugin module use SPI extension loader


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] CalvinKirs commented on issue #6612: [Feature][SPI] Optimize the SPI mechanism to make it more convenient for users to extend the plug-in

Posted by GitBox <gi...@apache.org>.
CalvinKirs commented on issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612#issuecomment-952765662


   > Hi @CalvinKirs I'm a little confused about that is it going to be the same problem for the registration center and alarm center if we use Java native SPI, such as class conflicts and multi-version isolation?
   
   This kind of situation usually occurs in complex functions, and it is mandatory to rely on two versions of the same jar. Such as our task module.
   
   But for simple modules, this is controllable. I see that other projects do not have any major problems in the registry, but the alarm is actually simpler, nothing more than HTTP or other more complicated communication methods, but the dependence is usually stable.
   
   What do you think?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] github-actions[bot] closed issue #6612: [Feature][SPI] Optimize the SPI mechanism to make it more convenient for users to extend the plug-in

Posted by GitBox <gi...@apache.org>.
github-actions[bot] closed issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [dolphinscheduler] ruanwenjun removed a comment on issue #6612: [Feature][SPI] Optimize the SPI mechanism to make it more convenient for users to extend the plug-in

Posted by GitBox <gi...@apache.org>.
ruanwenjun removed a comment on issue #6612:
URL: https://github.com/apache/dolphinscheduler/issues/6612#issuecomment-962595909


   This issue might be separate to three sub-task
   - Add SPI extension loader
   - Change registry plugin module use SPI extension loader
   - Change alert plugin module use SPI extension loader


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@dolphinscheduler.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org