 Airtricity’s Roscoe, Texas, Wind Farm
GE Energy Financial Services, a unit of General Electric (NYSE: GE), is expanding its wind energy portfolio by agreeing to invest in a 209-megawatt project under construction by Airtricity, Inc. in West Texas. The announcement was made today at Universal Studios California at GE’s “Green is Universal” exhibition, a celebration of GE customers’ improvements in operating and environmental performance.
GE Energy Financial Services and a subsidiary of Wachovia Corp. (NYSE: WB) are each investing 50 percent of the structured equity, alongside the equity of project developer and operator Airtricity, Inc., in the $300 million Roscoe Wind Farm in Mitchell, Nolan and Scurry counties. Construction of the Roscoe project began in March and is scheduled for completion by the end of this year in Roscoe, Texas, 45 miles southwest of Abilene in a cotton farming area. The Roscoe Wind Farm, the third wind project successfully developed by Airtricity in the United States, all in Texas. It will employ 209 one-megawatt Mitsubishi WTG turbines, with power sold to TXU Wholesale, a subsidiary of TXU Corp., under a five-year contract.
Additional financial details were not disclosed.
The wind farm will annually produce power sufficient for 60,000 homes and will avoid 375,000 tons a year in greenhouse gas emissions, compared to equivalent fossil fuel generation. The project supports GE’s ecomagination efforts by helping Texas, which leads all US states in installed wind power capacity, meet its renewable energy requirement to produce 5,880 megawatts of its power from renewable sources by 2015. Ecomagination is GE’s initiative to help its customers meet their environmental challenges while expanding its own portfolio of cleaner energy products.
“With strong wind resources, West Texas is an attractive site for new wind farm development,” said Kevin Walsh, Managing Director and leader of renewable energy at GE Energy Financial Services. “As we strive to grow our renewable energy holdings to $4 billion by 2010, we will continue to invest in quality wind projects, such as Roscoe, that take advantage not only of strong winds, but of strong partnerships with wind energy leaders such as Airtricity.”
The Roscoe project is the second in West Texas on which Airtricity and GE Energy Financial Services are collaborating. The two are also participating in the operational 125-megawatt Forest Creek Wind Farm 25 miles southeast of Big Spring.
“Roscoe is the largest project to date for Airtricity and an important milestone for the company’s expansion in the United States,” Airtricity’s North American CEO Declan Flanagan said. “Airtricity is taking a leading role in helping America meet its energy needs, and that is only possible with the help of investors like GE.” Airtricity
Founded in 1997, Airtricity is a fully integrated renewable power company with 455 MW of wind projects in operation, a further 1400 MW planned to be in operation by early 2009 and a project development pipeline in excess of 10,000 MW. Airtricity has over 360 employees globally organized in three core business units: Europe on-shore, Europe off-shore and North America. Airtricity also operates a retail supply business in Ireland supplying 35,000 commercial customers with renewable power.
Airtricity North America, headquartered in Chicago, initiated its wind power development activities in the U.S. in 2003 and Canada in 2006. Currently, Airtricity North America has completed construction of 214 MW with a further 370 MW under construction and 706 MW in final stage development backed by firm orders for turbines for delivery in 2008 through early 2009. With an additional 6,500 MW under development, Airtricity North America is well positioned to capitalize on the significant growth of wind power in the U.S. and Canada. Airtricity North America has offices in Chicago, Austin, and Toronto.
Editor’s Note: TV news B-roll of a wind farm, from general archives, is available atRecent studies have again raised concerns about the misconception that smoking shisha has fewer health risks than smoking cigarettes.
Although many people believe shisha tobacco is less dangerous than smoking cigarettes, research has shown that smoking shisha can cause damage to the lungs and the heart.
Shisha (or sheesha) is an oriental tobacco pipe which is available to buy or use in designated cafes worldwide. Herb or fruit flavoured tobacco is burnt using charcoal placed on aluminium foil. The tobacco smoke is cooled as it passes through a water-filled bowl and inhaled deep into the lungs using a flexible tube.
Although the water-filled bowl, which the tobacco passes through, is a barrier to the tar and absorbs nicotine, much greater levels of smoke are inhaled by the user compared with smoking cigarettes.
Research has shown that smoking shisha for 60-minutes can produce 100-200 times more smoke than having one cigarette. Smoking shisha also causes the inhalation of toxic gases, as well as aluminium fumes, which can cause both lung and heart problems.
The amount of carbon dioxide inhaled through smoking shisha is very high compared with cigarette smoking, depending on the ingredients used. In addition, the packaging of shisha tobacco makes people less aware of the amount they are smoking compared with cigarettes and medical experts caution that frequently smoking shisha significantly increases the risk of lung cancer and chronic obstructive pulmonary disease (COPD).<reponame>haghard/docker-compose-akka-cluster
package demo

import java.time.format.DateTimeFormatter
import java.time.{Instant, ZoneId, ZonedDateTime}

import akka.cluster.metrics.StandardMetrics.HeapMemory
import akka.cluster.metrics.{ClusterMetricsChanged, ClusterMetricsEvent, ClusterMetricsExtension}
import akka.util.ByteString
import spray.json._
import akka.actor.typed.{ActorRef, Behavior, PostStop}
import akka.actor.typed.scaladsl.Behaviors
import akka.actor.typed.scaladsl.adapter._

object ClusterJvmMetrics {

  sealed trait Confirm                                            extends ClusterMetricsEvent
  case object Confirm                                             extends Confirm
  case class Connect(ref: ActorRef[ClusterJvmMetrics.JvmMetrics]) extends Confirm

  sealed trait JvmMetrics
  case class ClusterMetrics(bs: ByteString) extends JvmMetrics
  case class StreamFailure(ex: Throwable)   extends JvmMetrics
  case object Completed                     extends JvmMetrics

  def apply(bs: Int = 1 << 5): Behavior[ClusterMetricsEvent] =
    Behaviors.receive[ClusterMetricsEvent] {
      case (ctx, _ @Connect(src)) ⇒
        val ex = ClusterMetricsExtension(ctx.system.toClassic)
        ex.subscribe(ctx.self.toClassic)
        //if you have more than 32 node in the cluster you need to increase the buffer size
        active(src, new RingBuffer[ClusterMetrics](bs))
      case (ctx, other) ⇒
        ctx.log.warn("Unexpected message: {} in init", other.getClass.getName)
        Behaviors.stopped
    }

  def awaitConfirmation(
    source: ActorRef[ClusterJvmMetrics.JvmMetrics],
    rb: RingBuffer[ClusterMetrics]
  ): Behavior[ClusterMetricsEvent] =
    Behaviors.receive[ClusterMetricsEvent] {
      case (_, ClusterJvmMetrics.Confirm) ⇒
        if (rb.size > 0) {
          rb.poll.foreach(source.tell(_))
          awaitConfirmation(source, rb)
        } else active(source, rb)
      case _ ⇒
        Behaviors.ignore
    }

  def active(
    source: ActorRef[ClusterJvmMetrics.JvmMetrics],
    rb: RingBuffer[ClusterMetrics],
    divider: Long = 1024 * 1024,
    defaultTZ: ZoneId = ZoneId.of(java.util.TimeZone.getDefault.getID),
    formatter: DateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss Z")
  ): Behavior[ClusterMetricsEvent] =
    Behaviors
     .receive[ClusterMetricsEvent] {
        case (_, _ @ClusterMetricsChanged(metrics)) ⇒
          metrics.foreach {
            case HeapMemory(address, timestamp, used, _, max) ⇒
              val js = JsObject(
                Map(
                  "node"   → JsString(address.toString),
                  "metric" → JsString("heap"),
                  "when" → JsString(
                    formatter.format(
                      ZonedDateTime
                       .ofInstant(Instant.ofEpochMilli(timestamp), defaultTZ)
                    )
                  ),
                  "used" → JsString((used / divider).toString + " mb"),
                  "max"  → JsString((max.getOrElse(0L) / divider).toString + " mb")
                )
              ).prettyPrint
              //the size of metrics emitted at once is equal to the number of nodes in the cluster,
              //therefore the max size of the queue is bound to that number
              rb