{"id":2186,"date":"2012-10-28T20:55:38","date_gmt":"2012-10-28T20:55:38","guid":{"rendered":"http:\/\/sl.governormarley.com\/?p=2186"},"modified":"2012-10-28T20:59:45","modified_gmt":"2012-10-28T20:59:45","slug":"internal-lsl-http-servers-could-do-with-dns","status":"publish","type":"post","link":"https:\/\/sl.governormarley.com\/?p=2186","title":{"rendered":"Internal LSL HTTP Servers Could Do With DNS"},"content":{"rendered":"<p><a title=\"LSL HTTP Server\" href=\"http:\/\/wiki.secondlife.com\/wiki\/LSL_HTTP_server\" target=\"_blank\">LSL HTTP Server<\/a> is a lovely concept, unfortunately it has drawbacks. This works great when you want information from external servers, but it&#8217;s a pain when you want information from inworld objects. I&#8217;ve been working on making a notecard giver that you update centrally and it updates your remote boards, HTTP is a great way of doing this, the only problem is, URL&#8217;s are temporary.<\/p>\n<p>What we really need is for these addresses to take advantage of DNS for simple tasks, so instead of the address being an IP address, it is something along the lines of http:\/\/www.secondlife.com\/region_name\/objectAddress. This is why DNS is such a great concept.<\/p>\n<p>Currently I have to use a system of updating my remote boards using llEmail to inform them of the new URL. This means that I need to store the extenal objects email addresses and use llEmail to update them, this is not only cumbersome, it&#8217;s a waste of resouces as I have to communicate with a system that Linden Lab themselves recognises as having serious bottleneck issues.<\/p>\n<p><!--more--><\/p>\n<p>The answer to the problem is along the same lines as <a title=\"Toy's idea\" href=\"http:\/\/toytalks.weebly.com\/1\/post\/2012\/07\/vlms-virtual-landmarks-a-missing-must-have-for-secondlife.html\" target=\"_blank\">Toysholdier Thor&#8217;s excellent suggestion regarding virtual landmarks<\/a>. Which is basically taking advantage of DNS to deliver results.<\/p>\n<p>We really shouldn&#8217;t need to go to addresses outside of Second Life to take advantage of efficient HTTP communications. Now there would be issues, Linden Lab would not want to have people constanly changing addresses so maybe it should be that you are allowed a pool of addresses determined upon your land holdings or you are allowed x amount of DNS names based upon being a premium or concierge customer.<\/p>\n<p>However, it seems silly to have to use external databases to perform tasks that not only make communications more efficient, they also take load off a sim. Currently we use workarounds to detect when a URL has changed, but this means we need to use more resources than is ideal to update remote objects.<\/p>\n<p>My, admittedly limited testing, has shown to me that http communications within Second Life are both robust and efficient. However I&#8217;m wary of using something that relies on http communications and llEmail, when I can do everything with llEmail anyway. llEmail has bottlenecks, but as I&#8217;m using it anyway, it makes my use of http on top of it, a little redundant.<\/p>\n<p>There are other ways of keeping URL&#8217;s, but they all involve more work than is ideal, for simple tasks, and a centrally managed notecard giver is a simple task, it would be better all around if we didn&#8217;t need to use workarounds. Obviously, if this were straight forward for Linden Lab to deliver, it would already be here, so there are reasons why it&#8217;s not, but it would be a nice to have. Not having this functionality, isn&#8217;t the end of the world, but it would aid efficency.<\/p>\n<p><a class=\"twitter-share-button\" href=\"https:\/\/twitter.com\/share\" data-url=\"http:\/\/sl.governormarley.com\/?p=2186\" data-via=\"Ciaran_Laval\">Tweet<\/a><br \/>\n<script type=\"text\/javascript\">\/\/ <![CDATA[\n!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=\"\/\/platform.twitter.com\/widgets.js\";fjs.parentNode.insertBefore(js,fjs);}}(document,\"script\",\"twitter-wjs\");\n\/\/ ]]><\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>LSL HTTP Server is a lovely concept, unfortunately it has drawbacks. This works great when you want information from external servers, but it&#8217;s a pain when you want information from inworld objects. I&#8217;ve been working on making a notecard giver that you update centrally and it updates your remote boards, HTTP is a great way &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/sl.governormarley.com\/?p=2186\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Internal LSL HTTP Servers Could Do With DNS&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false},"version":2}},"categories":[3,14],"tags":[410,19,272,411,1022],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p6rJUK-zg","jetpack-related-posts":[],"jetpack_likes_enabled":false,"_links":{"self":[{"href":"https:\/\/sl.governormarley.com\/index.php?rest_route=\/wp\/v2\/posts\/2186"}],"collection":[{"href":"https:\/\/sl.governormarley.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sl.governormarley.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sl.governormarley.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/sl.governormarley.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2186"}],"version-history":[{"count":5,"href":"https:\/\/sl.governormarley.com\/index.php?rest_route=\/wp\/v2\/posts\/2186\/revisions"}],"predecessor-version":[{"id":2190,"href":"https:\/\/sl.governormarley.com\/index.php?rest_route=\/wp\/v2\/posts\/2186\/revisions\/2190"}],"wp:attachment":[{"href":"https:\/\/sl.governormarley.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2186"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sl.governormarley.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2186"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sl.governormarley.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2186"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}