Punnadi,

I doubt "http://appserver.prod.<tenant_domain>/webapps/<AppKey>-<Version>/"
is a desirable solution for many customers. We need to just let them use
their custom domains without the extra "stuff".

Are the issues arising from us insisting on internal paths like "
http://appserver.prod.milestones.appfactory.wso2.com/t/myorg.com/webapps/sampleapp-1.0.0/";
compared to, say, heroku's myappname.herokuapp.com? Is there a reason why
we cannot - for production - cannot do what others are doing without having
to modify each and every app server?

Also, to add to the complexity, will we be able to support apex/naked/root
domains like myapp.com? If we cannot do this via A-records (e.g. because of
lack of static IP addresses?) - we can use workarounds a-la Heroku's:
https://devcenter.heroku.com/articles/custom-domains#root-domain

Dmitry


On Thu, Mar 13, 2014 at 2:21 AM, Punnadi Gunarathna <[email protected]>wrote:

> Some problems with the New approach:
>
> 1. If a particular user set the mapped domain name as "amazon.com" it
> will be an issue. How can we avoid such situations?
> 2. If we implement the url mapping logic in wso2 AS and if a particualr
> customer wants to use another application server instead what will happen?
>
>
> On Thu, Mar 13, 2014 at 1:53 PM, Punnadi Gunarathna <[email protected]>wrote:
>
>>
>> Hi All,
>>
>> This requirement came for Dmitry's uberstories. The idea is to let users
>> to have the freedom to decide the actual production url of a deployed
>> application. I will describe the details it as follows.
>>
>> *The Problem:*
>> In App Factory, Application Servers will be fronted with Apache Stratos
>> LB where it's proxyPort attribute are set to 80(HTTP) and 443(HTTPS).
>> Say a web application of a particular tenant is ready to use. Therefore
>> it is now deployed in Production stage and the url to access this
>> application
>> is similar to below pattern in the current implementation.
>>
>> http://appserver.prod.milestones.appfactory.wso2.com/t/
>> <tenant_domain>/webapps/<AppKey>-<Version>/
>>
>> e.g:
>>
>> http://appserver.prod.milestones.appfactory.wso2.com/t/myorg.com/webapps/sampleapp-1.0.0/
>>
>> *The Requirement:*
>> Rather than having a lengthy url with unnecessary information is it
>> possible to map this url to a more user-friendly and meaningful pattern?
>>
>> *The solution*
>>
>> *Initial Plan (Had a discussion with Lakmal to implement this feature in
>> Apache Stratos LB):*
>>
>> In order to implement this requirement in Apache Stratos LB front, the
>> solution has to be generic and with a minimal impact to it's performance.
>> Moreover following facts need to be taken into consideration while
>> designing the mapped url from App Factory perspective.
>>
>> 1. It's not particle to let the user to decide the mapped url. Because
>> certain data has to be added to url for it's uniqueness.
>>  - Cartridge type (Which has the capability to deploy PHP, ESB, Web,
>> jaggery Applications)
>>  - Stage (Dev, Test, Prod)
>>  - App name with the version (Because there can be multiple versions of
>> the same application in Production)
>>
>> The mapped url pattern can be as follows:
>>
>> http://appserver.prod.<tenant_domain>/webapps/<AppKey>-<Version>/
>>
>> e.g:
>> http://appserver.prod.myorg.com/webapps/sampleapp-1.0.0/
>>
>> Note: If we remove the version from this mapped url again the number of
>> mappings that we need to keep in LB front will increase which is not a good
>> solution.
>>
>> If the above solution is implemented only below mapping is required to
>> have in Straos LB front and the rest can be generated with the facts comes
>> with the mapped url.
>>
>> myorg.com - milestones.appfactory.wso2.com
>>
>>
>> *New direction (Had a discussion with Lakmal and Azeez):*
>>
>> With the initial plan the actual requirement of having a custom url
>> cannot be achieved properly. Because the mapped url pattern has lot of
>> restrictions.
>> Now the solution is to implement the url mapping logic in AS and domain
>> mapping logic in Apache Stratos LB. In that case a mapped url can be a
>> simple and meaningful url.
>> By having the domain mapping in LB front, the corresponding cluster can
>> be identified when the mapped url is hit from the browser.
>> Wso2 AS previously had this url mapper component and it requires to be
>> added back to implement this solution.
>> What was the reason that this url mapper was removed from AS?
>>
>> Please share your thoughts and ideas...
>>
>> --
>> Thanks and Regards,
>>
>> Punnadi Gunarathna
>> Senior Software Engineer,
>> WSO2, Inc.; http://wso2.com <http://wso2>
>> Blog: http://hi-my-world.blogspot.com/
>> Tel : 94 11 214 5345
>> Fax :94 11 2145300
>>
>>
>>
>>  <http://lalajisureshika.blogspot.com/>
>>
>
>
>
> --
> Thanks and Regards,
>
> Punnadi Gunarathna
> Senior Software Engineer,
> WSO2, Inc.; http://wso2.com <http://wso2>
> Blog: http://hi-my-world.blogspot.com/
> Tel : 94 11 214 5345
> Fax :94 11 2145300
>
>
>
>  <http://lalajisureshika.blogspot.com/>
>



-- 
Dmitry Sotnikov
VP of Cloud; WSO2, Inc.;  http://wso2.com/
email: [email protected]; cell: +1.949.303.9653; Skype: DSotnikov
Lean . Enterprise . Middleware

 <http://wso2.com/events/>
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to