[ 
https://issues.apache.org/jira/browse/SOLR-6733?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16476715#comment-16476715
 ] 

Shawn Heisey commented on SOLR-6733:
------------------------------------

[~dsmiley], most of that is covered in the discussion on the WhyNoWar wiki page:

https://wiki.apache.org/solr/WhyNoWar

The more of the server config that we can control in our own code and not leave 
up to other people's code and configuration, the better off we'll be.

At the moment, we can't implement much of anything at the server/container 
level, because Solr is self-contained within its webapp.  With an embedded 
container, we would be able to do almost anything.

I'm still very enamored by the idea in the subtask on this issue -- SOLR-6734.  
I think it would be a lot easier to implement that idea if Solr were its own 
self-contained application, instead of being started as a stripped-down but 
otherwise unmodified Jetty.

I'm aware that there's a significant amount of work required to implement this 
issue.  It is my hope that a lot of the work would fall on my shoulders, but I 
also know that I will need help, and might find myself very much out of my 
depth.

[~arafalov], Solr's code, especially the tests, is already pretty well attached 
to Jetty.  Switching to another container (undertow, tomcat, etc) or a 
completely different framework (Netty, Spring Boot, etc) would require a lot 
more work than embedding Jetty.  If there are tangible and easily-realized 
benefits to a switch, then I'm not opposed to it ... but those benefits would 
have to be pretty significant and difficult/impossible with Jetty.


> Umbrella issue - Solr as a standalone application
> -------------------------------------------------
>
>                 Key: SOLR-6733
>                 URL: https://issues.apache.org/jira/browse/SOLR-6733
>             Project: Solr
>          Issue Type: New Feature
>            Reporter: Shawn Heisey
>            Priority: Major
>
> Umbrella issue.
> Solr should be a standalone application, where the main method is provided by 
> Solr source code.
> Here are the major tasks I envision, if we choose to embed Jetty:
>  * Create org.apache.solr.start.Main (and possibly other classes in the same 
> package), to be placed in solr-start.jar.  The Main class will contain the 
> main method that starts the embedded Jetty and Solr.  I do not know how to 
> adjust the build system to do this successfully.
>  * Handle central configurations in code -- TCP port, SSL, and things like 
> web.xml.
>  * For each of these steps, clean up any test fallout.
>  * Handle cloud-related configurations in code -- port, hostname, protocol, 
> etc.  Use the same information as the central configurations.
>  * Consider whether things like authentication need changes.
>  * Handle any remaining container configurations.
> I am currently imagining this work happening in a new branch and ultimately 
> being applied only to master, not the stable branch.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to