Rob Brooks-Bilson
Tech, Photography, Stuff
Tech, Photography, Stuff
May 14, 2008
A recent post on Brian Kotek's blog about future directions for ColdFusion sparked a lot of debate over whether or not ColdFusion should support AS3 server-side. I want to change the focus here a bit and talk about a feature I've been thinking about that would be potentially useful to a lot of people. I'd like to see ColdFusion 9 support deployment of various services across multiple JVMs - without having to have multiple instances of the full ColdFusion server.
Why would you want to do this? Let me lay out a few scenarios and see if this starts to make more sense. Imagine you have a ColdFusion application deployed on a 32-bit Windows server with 4 GB of memory. The ColdFusion application in question does a lot of XML manipulation and PDF document generation. If you've ever had a similar application in a similar environment, then you know that your ColdFusion application can really only make use of about 1.6 GB of RAM as that's a limit of the JVM on 32 bit platforms. You also know that both XML parsing and PDF document generation are very expensive operations, especially from a memory utilization perspective. Now imagine if you could configure your ColdFusion application such that it was able to off-load the PDF document generation and the XML parsing and transformation to separate JVMs. This would allow your core application to handle the majority of your application functionality while off-loading the processing intensive operations to separate specialized JVMs (as opposed to separate threads on the same JVM). The difference here is that the additional JVMs wouldn't require a full instance of the application server - just the specific processing parts that can be off-loaded. This is exactly how most Enterprise Service Buses deal with distributed processing and I think it would be a killer feature for ColdFusion to have in its bag of tricks.
Of course the benefit isn't limited to just memory limited JVM instances in 32 bit environments. In 64-bit environments, it makes just as much sense as you are still segmenting processing, allowing for better thread utilization, and potentially allowing you to scale out just the type of processing you need to.
What do you think? Does this make sense?
March 2, 2007
Paul Kenney is working on the next major release of his unit testing framework for ColdFusion, CFCUnit and is interested in hearing what you want to see in the release.
October 31, 2006
This one has been a long time coming. Back in 2003, I blogged about how it would be really cool now that ColdFusion was built on top of Java for ColdFusion to support the portlet specifications outlined in JSR 168 & 170. I was really hoping they would release something for ColdFusion that made this as easy as wrapping code with a custom tag, or invoking a CFC. I also heard rumors that Macromedia had created a proof of concept for this at the request of a customer, but nothing was ever released.
As time went on, I shifted away from looking at a commercial portal (WebSphere) as a solution for some problems we were trying to solve, but I still keep an eye on developments in that space, as I never know when things may change and I could find myself looking at portals again.
All of this brings me to the point of this post. It looks like Adobe has released a proof of concept Portlet Toolkit for IBM Websphere and ColdFusion!
From the Adobe Labs website:
"The ColdFusion Portlet Toolkit is a proof-of-concept library that allows you to use ColdFusion as a Portal Application within an IBM WebSphere Portal Server (WSPS version 5 and greater). A Portal Application can serve several different portlets. Every portlet you deploy will run inside the same ColdFusion Portal Application. This toolkit provides one concrete Portlet called CFCPortlet. This Portlet simply passes the requests on to the ColdFusion server. The ColdFusion then invokes CFC methods to render the Portlet, and to perform actions. You can deploy several instances of this Portlet on your Portal Server. The setting cfcName defines which CFC will be used to marshal the Portlet events."
I think this opens up a lot of cool possibilities for ColdFusion developers working at companies who have also deployed Websphere portals. Although this release is Websphere specific, I would think it wouldn't be that difficult for Adobe to port the library for other portal implementations (like Apache Jetspeed). Now I just wish I had a Websphere portal so I could play with this thing!
August 1, 2006
At the urging of several people, I've taken my Blackstone Wishlist, stripped out requests that made it into CFMX 7, 7.0.1, and 7.0.2 as well as requests that have already been mentioned on a plethora of other blogs (many of which I would like to see), and came up with the following things I'd like to see considered for the ColdFusion MX 8 (Scorpio) release. Apologies for any requests that may have already been mentioned on other blogs.
Drum roll please (in no particular order)...
July 23, 2006
First, I wanted to point out that Simon Horwith has written an Open Letter to the ColdFusion Server Team in which he outlines 25 features he would like to see implemented in ColdFusion 8 (Scorpio). I have to say that I agree with most of what Simon's asking for. In fact, if you take a look at My Blackstone Wishlist, which I put together back in 2004, you'll see many of the same feature requests (some of these made it into Blackstone, and some into Merimack).
This leads me to the question, what are the most important features Adobe customers would like to see in the next version of ColdFusion. Each new release brings with it a trade-off of cost vs. benefit. What's the biggest bang we can get for the buck in the next version of ColdFusion?
January 25, 2006
I use the ColdFusion scheduling service quite a bit. For one of our applications, we have over 500 scheduled tasks that execute daily, controlling the generation and distribution of reports. Because of the frequency with which I use the scheduler, I've compiled a list over the years of features I'd love to see added to the current implementation:
I know that this list is by no means exhaustive. What would you like to see added to the ColdFusion scheduler?
May 12, 2004
I know several people have already blogged CF MX 7 (Blackstone) feature requests, but I figured I'd share the list of features I've been compiling. This list represents enhancements that I along with many other developers have been asking for, some of them going back several versions of CF. I've submitted this entire list to Macromedia, but I wanted to see what others out there think. I realize that some are much more doable than others, and that some of my requests fall within the category of "niche" feature, but I thought I would share nonetheless: